home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 21
/
Aminet 21 (1997)(GTI - Schatztruhe)[!][Oct 1997].iso
/
Aminet
/
game
/
text
/
Competition96.lha
/
Comp96.z5
(
.txt
)
< prev
Wrap
Z-code for Z-machine
|
1997-08-02
|
85KB
|
10,828 lines
Resident data ends at 4a68, program starts at 4a68, file ends at 14b68
Starting analysis pass at address 4a68
End of analysis pass, low address = 4a68, high address = 120ac
[Start of code]
Main routine R0001, 0 locals
CALL_VS R0002 -> Gef
QUIT
Routine R0002, 0 locals
CALL_VN R0318 (#0016,#0049)
RTRUE
Routine R0003, 0 locals
RTRUE
Routine R0004, 1 local
LOADB L00,#00 -> -(SP)
PULL Gef
JE Gef,#61,#65,#69 [TRUE] L0001
JE Gef,#6f,#75,#41 [TRUE] L0001
JE Gef,#45,#49,#4f [TRUE] L0001
JE Gef,#55 [FALSE] L0002
L0001: RTRUE
L0002: RFALSE
Routine R0005, 1 local
STORE Gef,L00
JE Gef,#07 [FALSE] L0001
PRINT "north"
JUMP L0013
L0001: JE Gef,#08 [FALSE] L0002
PRINT "south"
JUMP L0013
L0002: JE Gef,#09 [FALSE] L0003
PRINT "east"
JUMP L0013
L0003: JE Gef,#0a [FALSE] L0004
PRINT "west"
JUMP L0013
L0004: JE Gef,#0b [FALSE] L0005
PRINT "northeast"
JUMP L0013
L0005: JE Gef,#0d [FALSE] L0006
PRINT "northwest"
JUMP L0013
L0006: JE Gef,#0c [FALSE] L0007
PRINT "southeast"
JUMP L0013
L0007: JE Gef,#0e [FALSE] L0008
PRINT "southwest"
JUMP L0013
L0008: JE Gef,#0f [FALSE] L0009
PRINT "up"
JUMP L0013
L0009: JE Gef,#10 [FALSE] L0010
PRINT "down"
JUMP L0013
L0010: JE Gef,#11 [FALSE] L0011
PRINT "in"
JUMP L0013
L0011: JE Gef,#12 [FALSE] L0012
PRINT "out"
JUMP L0013
L0012: CALL_VS R0111 (#09,L00) -> -(SP)
RET_POPPED
L0013: RTRUE
Routine R0006, 2 locals
JZ L00 [FALSE] L0001
PRINT "zero"
RFALSE
L0001: JL L00,#00 [FALSE] L0002
PRINT "minus "
SUB #00,L00 -> L00
L0002: JL L00,#03e8 [TRUE] L0003
DIV L00,#03e8 -> -(SP)
CALL_2N R0006 ((SP)+)
PRINT " thousand"
MOD L00,#03e8 -> L00
STORE L01,#01
L0003: JL L00,#64 [TRUE] L0005
JE L01,#01 [FALSE] L0004
PRINT ", "
L0004: DIV L00,#64 -> -(SP)
CALL_2N R0006 ((SP)+)
PRINT " hundred"
MOD L00,#64 -> L00
STORE L01,#01
L0005: JZ L00 [TRUE] RFALSE
JE L01,#01 [FALSE] L0006
PRINT " and "
L0006: STORE Gef,L00
JE Gef,#01 [FALSE] L0007
PRINT "one"
JUMP L0034
L0007: JE Gef,#02 [FALSE] L0008
PRINT "two"
JUMP L0034
L0008: JE Gef,#03 [FALSE] L0009
PRINT "three"
JUMP L0034
L0009: JE Gef,#04 [FALSE] L0010
PRINT "four"
JUMP L0034
L0010: JE Gef,#05 [FALSE] L0011
PRINT "five"
JUMP L0034
L0011: JE Gef,#06 [FALSE] L0012
PRINT "six"
JUMP L0034
L0012: JE Gef,#07 [FALSE] L0013
PRINT "seven"
JUMP L0034
L0013: JE Gef,#08 [FALSE] L0014
PRINT "eight"
JUMP L0034
L0014: JE Gef,#09 [FALSE] L0015
PRINT "nine"
JUMP L0034
L0015: JE Gef,#0a [FALSE] L0016
PRINT "ten"
JUMP L0034
L0016: JE Gef,#0b [FALSE] L0017
PRINT "eleven"
JUMP L0034
L0017: JE Gef,#0c [FALSE] L0018
PRINT "twelve"
JUMP L0034
L0018: JE Gef,#0d [FALSE] L0019
PRINT "thirteen"
JUMP L0034
L0019: JE Gef,#0e [FALSE] L0020
PRINT "fourteen"
JUMP L0034
L0020: JE Gef,#0f [FALSE] L0021
PRINT "fifteen"
JUMP L0034
L0021: JE Gef,#10 [FALSE] L0022
PRINT "sixteen"
JUMP L0034
L0022: JE Gef,#11 [FALSE] L0023
PRINT "seventeen"
JUMP L0034
L0023: JE Gef,#12 [FALSE] L0024
PRINT "eighteen"
JUMP L0034
L0024: JE Gef,#13 [FALSE] L0025
PRINT "nineteen"
JUMP L0034
L0025: JL Gef,#14 [TRUE] L0034
JG Gef,#63 [TRUE] L0034
DIV L00,#0a -> -(SP)
PULL Gef
JE Gef,#02 [FALSE] L0026
PRINT "twenty"
JUMP L0033
L0026: JE Gef,#03 [FALSE] L0027
PRINT "thirty"
JUMP L0033
L0027: JE Gef,#04 [FALSE] L0028
PRINT "forty"
JUMP L0033
L0028: JE Gef,#05 [FALSE] L0029
PRINT "fifty"
JUMP L0033
L0029: JE Gef,#06 [FALSE] L0030
PRINT "sixty"
JUMP L0033
L0030: JE Gef,#07 [FALSE] L0031
PRINT "seventy"
JUMP L0033
L0031: JE Gef,#08 [FALSE] L0032
PRINT "eighty"
JUMP L0033
L0032: JE Gef,#09 [FALSE] L0033
PRINT "ninety"
L0033: MOD L00,#0a -> -(SP)
JZ (SP)+ [TRUE] L0034
PRINT "-"
MOD L00,#0a -> -(SP)
CALL_2N R0006 ((SP)+)
L0034: RTRUE
Routine R0007, 3 locals
MOD L00,#0c -> L02
JL L02,#0a [FALSE] L0001
PRINT " "
L0001: JZ L02 [FALSE] L0002
STORE L02,#0c
L0002: PRINT_NUM L02
PRINT ":"
DIV L01,#0a -> -(SP)
PRINT_NUM (SP)+
MOD L01,#0a -> -(SP)
PRINT_NUM (SP)+
DIV L00,#0c -> -(SP)
JG (SP)+,#00 [FALSE] L0003
PRINT " pm"
JUMP L0004
L0003: PRINT " am"
L0004: RTRUE
Routine R0008, 1 local
JE L00,"l" [FALSE] L0001
PRINT "look"
RTRUE
L0001: JE L00,"z" [FALSE] L0002
PRINT "wait"
RTRUE
L0002: JE L00,"x" [FALSE] L0003
PRINT "examine"
RTRUE
L0003: JE L00,"i","inv","inventory" [FALSE] L0004
PRINT "inventory"
RTRUE
L0004: RFALSE
Routine R0009, 1 local
TEST_ATTR L00,#1e [FALSE] L0001
PRINT "those"
JUMP L0002
L0001: PRINT "that"
L0002: RTRUE
Routine R0010, 1 local
TEST_ATTR L00,#1e [FALSE] L0001
PRINT "them"
JUMP L0002
L0001: PRINT "it"
L0002: RTRUE
Routine R0011, 1 local
TEST_ATTR L00,#1e [FALSE] L0001
PRINT "are"
JUMP L0002
L0001: PRINT "is"
L0002: RTRUE
Routine R0012, 1 local
TEST_ATTR L00,#1e [FALSE] L0001
PRINT "Those"
JUMP L0002
L0001: PRINT "That"
L0002: RTRUE
Routine R0013, 1 local
TEST_ATTR L00,#1e [FALSE] L0001
PRINT "They're"
JUMP L0002
L0001: PRINT "That's"
L0002: RTRUE
Routine R0014, 2 locals
JE Ge9,#1008 [FALSE] L0001
PRINT "
>"
RTRUE
L0001: JE Ge9,#1007 [FALSE] L0066
STORE Gef,L00
JE Gef,#01 [FALSE] L0002
PRINT_RET "(considering the first sixteen objects only)
"
L0002: JE Gef,#02 [FALSE] L0003
PRINT_RET "Nothing to do!"
L0003: JE Gef,#03 [FALSE] L0004
PRINT " You have died "
JUMP L0065
L0004: JE Gef,#04 [FALSE] L0005
PRINT " You have won "
JUMP L0065
L0005: JE Gef,#05 [FALSE] L0008
PRINT "
Would you like to RESTART, RESTORE a saved game"
JZ #0001 [FALSE] L0006
PRINT ", give the FULL score for that game"
L0006: JE G13,#02 [FALSE] L0007
JZ #0001 [FALSE] L0007
PRINT ", see some suggestions for AMUSING things to do"
L0007: PRINT_RET " or QUIT?"
L0008: JE Gef,#06 [FALSE] L0009
PRINT_RET "[Your interpreter does not provide "undo". Sorry!]"
L0009: JE Gef,#07 [FALSE] L0010
PRINT_RET ""Undo" failed. [Not all interpreters provide it.]"
L0010: JE Gef,#08 [FALSE] L0011
PRINT_RET "Please give one of the answers above."
L0011: JE Gef,#09 [FALSE] L0012
PRINT_RET "
It is now pitch dark in here!"
L0012: JE Gef,#0a [FALSE] L0013
PRINT_RET "I beg your pardon?"
L0013: JE Gef,#0b [FALSE] L0014
PRINT_RET "[You can't "undo" what hasn't been done!]"
L0014: JE Gef,#0c [FALSE] L0015
PRINT_RET "[Can't "undo" twice in succession. Sorry!]"
L0015: JE Gef,#0d [FALSE] L0016
PRINT_RET "[Previous turn undone.]"
L0016: JE Gef,#0e [FALSE] L0017
PRINT_RET "Sorry, that can't be corrected."
L0017: JE Gef,#0f [FALSE] L0018
PRINT_RET "Think nothing of it."
L0018: JE Gef,#10 [FALSE] L0019
PRINT_RET ""Oops" can only correct a single word."
L0019: JE Gef,#11 [FALSE] L0020
PRINT_RET "It is pitch dark, and you can't see a thing."
L0020: JE Gef,#12 [FALSE] L0021
PRINT "yourself"
JUMP L0065
L0021: JE Gef,#13 [FALSE] L0022
PRINT_RET "As good-looking as ever."
L0022: JE Gef,#14 [FALSE] L0023
PRINT_RET "To repeat a command like "frog, jump", just say
"again", not "frog, again"."
L0023: JE Gef,#15 [FALSE] L0024
PRINT_RET "You can hardly repeat that."
L0024: JE Gef,#16 [FALSE] L0025
PRINT_RET "You can't begin with a comma."
L0025: JE Gef,#17 [FALSE] L0026
PRINT_RET "You seem to want to talk to someone, but I can't see
whom."
L0026: JE Gef,#18 [FALSE] L0027
PRINT "You can't talk to "
CALL_2N R0102 (L01)
PRINT_RET "."
L0027: JE Gef,#19 [FALSE] L0028
PRINT_RET "To talk to someone, try "someone, hello" or some such."
L0028: JE Gef,#1a [FALSE] L0029
PRINT "(first taking "
CALL_2N R0102 (G40)
PRINT_RET ")"
L0029: JE Gef,#1b [FALSE] L0030
PRINT_RET "I didn't understand that sentence."
L0030: JE Gef,#1c [FALSE] L0031
PRINT "I only understood you as far as wanting to "
JUMP L0065
L0031: JE Gef,#1d [FALSE] L0032
PRINT_RET "I didn't understand that number."
L0032: JE Gef,#1e [FALSE] L0033
PRINT_RET "You can't see any such thing."
L0033: JE Gef,#1f [FALSE] L0034
PRINT_RET "You seem to have said too little!"
L0034: JE Gef,#20 [FALSE] L0035
PRINT_RET "You aren't holding that!"
L0035: JE Gef,#21 [FALSE] L0036
PRINT_RET "You can't use multiple objects with that verb."
L0036: JE Gef,#22 [FALSE] L0037
PRINT_RET "You can only use multiple objects once on a line."
L0037: JE Gef,#23 [FALSE] L0038
PRINT "I'm not sure what ""
PRINT_ADDR G64
PRINT_RET "" refers to."
L0038: JE Gef,#24 [FALSE] L0039
PRINT_RET "You excepted something not included anyway!"
L0039: JE Gef,#25 [FALSE] L0040
PRINT_RET "You can only do that to something animate."
L0040: JE Gef,#26 [FALSE] L0041
PRINT_RET "That's not a verb I recognise."
L0041: JE Gef,#27 [FALSE] L0042
PRINT_RET "That's not something you need to refer to in the course
of this game."
L0042: JE Gef,#28 [FALSE] L0043
PRINT "You can't see ""
PRINT_ADDR G64
PRINT "" ("
CALL_2N R0102 (G65)
PRINT_RET ") at the moment."
L0043: JE Gef,#29 [FALSE] L0044
PRINT_RET "I didn't understand the way that finished."
L0044: JE Gef,#2a [FALSE] L0049
JZ L01 [FALSE] L0045
PRINT "None"
JUMP L0046
L0045: PRINT "Only "
CALL_2N R0105 (L01)
L0046: PRINT " of those "
JE L01,#01 [FALSE] L0047
PRINT "is"
JUMP L0048
L0047: PRINT "are"
L0048: PRINT_RET " available."
L0049: JE Gef,#2b [FALSE] L0050
PRINT_RET "Nothing to do!"
L0050: JE Gef,#2c [FALSE] L0051
PRINT_RET "There are none at all available!"
L0051: JE Gef,#2d [FALSE] L0052
PRINT "Who do you mean, "
JUMP L0065
L0052: JE Gef,#2e [FALSE] L0053
PRINT "Which do you mean, "
JUMP L0065
L0053: JE Gef,#2f [FALSE] L0054
PRINT_RET "Sorry, you can only have one item here. Which exactly?"
L0054: JE Gef,#30 [FALSE] L0056
PRINT "Whom do you want"
JE G34,G12 [TRUE] L0055
PRINT " "
CALL_2N R0102 (G34)
L0055: PRINT " to "
CALL_1N R0035
PRINT "?
"
JUMP L0065
L0056: JE Gef,#31 [FALSE] L0058
PRINT "What do you want"
JE G34,G12 [TRUE] L0057
PRINT " "
CALL_2N R0102 (G34)
L0057: PRINT " to "
CALL_1N R0035
PRINT "?
"
JUMP L0065
L0058: JE Gef,#32 [FALSE] L0062
PRINT "Your score has just gone "
JG L01,#00 [FALSE] L0059
PRINT "up"
JUMP L0060
L0059: SUB #00,L01 -> L01
PRINT "down"
L0060: PRINT " by "
CALL_2N R0105 (L01)
PRINT " point"
JG L01,#01 [FALSE] L0061
PRINT "s"
L0061: JUMP L0065
L0062: JE Gef,#33 [FALSE] L0063
PRINT_RET "(Since something dramatic has happened, your list of
commands has been cut short.)"
L0063: JE Gef,#34 [FALSE] L0064
PRINT "
Type a number from 1 to "
PRINT_NUM L01
PRINT_RET ", 0 to redisplay or press ENTER."
L0064: JE Gef,#35 [FALSE] L0065
PRINT_RET "
[Please press SPACE.]"
L0065: RTRUE
L0066: JE Ge9,#1006 [FALSE] L0089
STORE Gef,L00
JE Gef,#01 [FALSE] L0067
PRINT " (providing light)"
JUMP L0088
L0067: JE Gef,#02 [FALSE] L0068
PRINT " (which "
CALL_2N R0011 (L01)
PRINT " closed)"
JUMP L0088
L0068: JE Gef,#03 [FALSE] L0069
PRINT " (closed and providing light)"
JUMP L0088
L0069: JE Gef,#04 [FALSE] L0070
PRINT " (which "
CALL_2N R0011 (L01)
PRINT " empty)"
JUMP L0088
L0070: JE Gef,#05 [FALSE] L0071
PRINT " (empty and providing light)"
JUMP L0088
L0071: JE Gef,#06 [FALSE] L0072
PRINT " (which "
CALL_2N R0011 (L01)
PRINT " closed and empty)"
JUMP L0088
L0072: JE Gef,#07 [FALSE] L0073
PRINT " (closed, empty and providing light)"
JUMP L0088
L0073: JE Gef,#08 [FALSE] L0074
PRINT " (providing light and being worn"
JUMP L0088
L0074: JE Gef,#09 [FALSE] L0075
PRINT " (providing light"
JUMP L0088
L0075: JE Gef,#0a [FALSE] L0076
PRINT " (being worn"
JUMP L0088
L0076: JE Gef,#0b [FALSE] L0077
PRINT " (which "
CALL_2N R0011 (L01)
PRINT " "
JUMP L0088
L0077: JE Gef,#0c [FALSE] L0078
PRINT "open"
JUMP L0088
L0078: JE Gef,#0d [FALSE] L0079
PRINT "open but empty"
JUMP L0088
L0079: JE Gef,#0e [FALSE] L0080
PRINT "closed"
JUMP L0088
L0080: JE Gef,#0f [FALSE] L0081
PRINT "closed and locked"
JUMP L0088
L0081: JE Gef,#10 [FALSE] L0082
PRINT " and empty"
JUMP L0088
L0082: JE Gef,#11 [FALSE] L0083
PRINT " (which "
CALL_2N R0011 (L01)
PRINT " empty)"
JUMP L0088
L0083: JE Gef,#12 [FALSE] L0084
PRINT " containing "
JUMP L0088
L0084: JE Gef,#13 [FALSE] L0085
PRINT " (on "
JUMP L0088
L0085: JE Gef,#14 [FALSE] L0086
PRINT ", on top of "
JUMP L0088
L0086: JE Gef,#15 [FALSE] L0087
PRINT " (in "
JUMP L0088
L0087: JE Gef,#16 [FALSE] L0088
PRINT ", inside "
L0088: RTRUE
L0089: JE Ge9,#00 [FALSE] L0094
STORE Gef,L00
JE Gef,#01 [FALSE] L0090
PRINT "At the moment, "
JUMP L0093
L0090: JE Gef,#02 [FALSE] L0091
PRINT "means "
JUMP L0093
L0091: JE Gef,#03 [FALSE] L0092
PRINT "is unset"
JUMP L0093
L0092: JE Gef,#04 [FALSE] L0093
PRINT_RET "no pronouns are known to the game."
L0093: RTRUE
L0094: JE Ge9,#1003 [FALSE] L0097
CALL_2N R0103 (L01)
TEST_ATTR L01,#1e [FALSE] L0095
PRINT " have"
JUMP L0096
L0095: PRINT " has"
L0096: PRINT_RET " better things to do."
L0097: JE Ge9,#01 [FALSE] L0100
STORE Gef,L00
JE Gef,#01 [FALSE] L0098
PRINT "Please answer yes or no."
JUMP L0099
L0098: JE Gef,#02 [FALSE] L0099
PRINT "Are you sure you want to quit? "
L0099: RTRUE
L0100: JE Ge9,#02 [FALSE] L0103
STORE Gef,L00
JE Gef,#01 [FALSE] L0101
PRINT "Are you sure you want to restart? "
JUMP L0102
L0101: JE Gef,#02 [FALSE] L0102
PRINT_RET "Failed."
L0102: RTRUE
L0103: JE Ge9,#03 [FALSE] L0106
STORE Gef,L00
JE Gef,#01 [FALSE] L0104
PRINT_RET "Restore failed."
L0104: JE Gef,#02 [FALSE] L0105
PRINT_RET "Ok."
L0105: RTRUE
L0106: JE Ge9,#04 [FALSE] L0109
STORE Gef,L00
JE Gef,#01 [FALSE] L0107
PRINT_RET "Save failed."
L0107: JE Gef,#02 [FALSE] L0108
PRINT_RET "Ok."
L0108: RTRUE
L0109: JE Ge9,#05 [FALSE] L0112
STORE Gef,L00
JE Gef,#01 [FALSE] L0110
PRINT_RET "The game file has verified as intact."
L0110: JE Gef,#02 [FALSE] L0111
PRINT_RET "The game file did not verify as intact, and may be
corrupted (unless you are playing it with a very primitive interpreter which is
unable properly to perform the test)."
L0111: RTRUE
L0112: JE Ge9,#06 [FALSE] L0115
STORE Gef,L00
JE Gef,#01 [FALSE] L0113
PRINT_RET "Transcripting is already on."
L0113: JE Gef,#02 [FALSE] L0114
PRINT_RET "Start of a transcript of"
L0114: RTRUE
L0115: JE Ge9,#07 [FALSE] L0118
STORE Gef,L00
JE Gef,#01 [FALSE] L0116
PRINT_RET "Transcripting is already off."
L0116: JE Gef,#02 [FALSE] L0117
PRINT_RET "
End of transcript."
L0117: RTRUE
L0118: JE Ge9,#08 [FALSE] L0119
PRINT_RET "Score notification on."
L0119: JE Ge9,#09 [FALSE] L0120
PRINT_RET "Score notification off."
L0120: JE Ge9,#0a [FALSE] L0121
PRINT "You have visited: "
RTRUE
L0121: JE Ge9,#0b [FALSE] L0132
STORE Gef,L00
JE Gef,#01 [FALSE] L0122
PRINT_RET "Objects you have handled:
"
L0122: JE Gef,#02 [FALSE] L0123
PRINT_RET "None."
L0123: JE Gef,#03 [FALSE] L0124
PRINT " (worn)"
JUMP L0131
L0124: JE Gef,#04 [FALSE] L0125
PRINT " (held)"
JUMP L0131
L0125: JE Gef,#05 [FALSE] L0126
PRINT " (given away)"
JUMP L0131
L0126: JE Gef,#06 [FALSE] L0127
PRINT " (in "
CALL_2N R0104 (L01)
PRINT ")"
JUMP L0131
L0127: JE Gef,#07 [FALSE] L0128
PRINT " (in "
CALL_2N R0102 (L01)
PRINT ")"
JUMP L0131
L0128: JE Gef,#08 [FALSE] L0129
PRINT " (inside "
CALL_2N R0102 (L01)
PRINT ")"
JUMP L0131
L0129: JE Gef,#09 [FALSE] L0130
PRINT " (on "
CALL_2N R0102 (L01)
PRINT ")"
JUMP L0131
L0130: JE Gef,#0a [FALSE] L0131
PRINT " (lost)"
L0131: RTRUE
L0132: JE Ge9,#0c [FALSE] L0136
JZ G13 [TRUE] L0133
PRINT "In that game you scored "
JUMP L0134
L0133: PRINT "You have so far scored "
L0134: PRINT_NUM G0d
PRINT " out of a possible "
PRINT_NUM #0000
PRINT ", in "
PRINT_NUM G08
PRINT " turn"
JG G08,#01 [FALSE] L0135
PRINT "s"
L0135: RTRUE
L0136: JE Ge9,#0d [FALSE] L0143
STORE Gef,L00
JE Gef,#01 [FALSE] L0139
JZ G13 [TRUE] L0137
PRINT "The score was "
JUMP L0138
L0137: PRINT "The score is "
L0138: PRINT_RET "made up as follows:
"
L0139: JE Gef,#02 [FALSE] L0140
PRINT_RET "finding sundry items"
L0140: JE Gef,#03 [FALSE] L0141
PRINT_RET "visiting various places"
L0141: JE Gef,#04 [FALSE] L0142
PRINT "total (out of "
PRINT_NUM #0000
PRINT_RET ")"
L0142: RTRUE
L0143: JE Ge9,#0e [FALSE] L0146
STORE Gef,L00
JE Gef,#01 [FALSE] L0144
PRINT_RET "You are carrying nothing."
L0144: JE Gef,#02 [FALSE] L0145
PRINT "You are carrying"
L0145: RTRUE
L0146: JE Ge9,#0f [FALSE] L0170
STORE Gef,L00
JE Gef,#01 [FALSE] L0147
PRINT_RET "Taken."
L0147: JE Gef,#02 [FALSE] L0148
PRINT_RET "You are always self-possessed."
L0148: JE Gef,#03 [FALSE] L0149
PRINT "I don't suppose "
CALL_2N R0102 (L01)
PRINT_RET " would care for that."
L0149: JE Gef,#04 [FALSE] L0152
PRINT "You'd have to get "
TEST_ATTR L01,#14 [FALSE] L0150
PRINT "off "
JUMP L0151
L0150: PRINT "out of "
L0151: CALL_2N R0102 (L01)
PRINT_RET " first."
L0152: JE Gef,#05 [FALSE] L0153
PRINT "You already have "
CALL_2N R0009 (L01)
PRINT_RET "."
L0153: JE Gef,#06 [FALSE] L0156
TEST_ATTR G2a,#1e [FALSE] L0154
PRINT "Those seem "
JUMP L0155
L0154: PRINT "That seems "
L0155: PRINT "to belong to "
CALL_2N R0102 (L01)
PRINT_RET "."
L0156: JE Gef,#07 [FALSE] L0159
TEST_ATTR G2a,#1e [FALSE] L0157
PRINT "Those seem "
JUMP L0158
L0157: PRINT "That seems "
L0158: PRINT "to be a part of "
CALL_2N R0102 (L01)
PRINT_RET "."
L0159: JE Gef,#08 [FALSE] L0160
CALL_2N R0012 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET "n't available."
L0160: JE Gef,#09 [FALSE] L0161
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET "n't open."
L0161: JE Gef,#0a [FALSE] L0164
TEST_ATTR L01,#1e [FALSE] L0162
PRINT "They're "
JUMP L0163
L0162: PRINT "That's "
L0163: PRINT_RET "hardly portable."
L0164: JE Gef,#0b [FALSE] L0167
TEST_ATTR L01,#1e [FALSE] L0165
PRINT "They're "
JUMP L0166
L0165: PRINT "That's "
L0166: PRINT_RET "fixed in place."
L0167: JE Gef,#0c [FALSE] L0168
PRINT_RET "You're carrying too many things already."
L0168: JE Gef,#0d [FALSE] L0169
PRINT "(putting "
CALL_2N R0102 (L01)
PRINT " into "
CALL_2N R0102 (#0000)
PRINT_RET " to make room)"
L0169: RTRUE
L0170: JE Ge9,#10 [FALSE] L0177
STORE Gef,L00
JE Gef,#01 [FALSE] L0173
TEST_ATTR L01,#1e [FALSE] L0171
CALL_2N R0103 (L01)
PRINT " are "
JUMP L0172
L0171: CALL_2N R0103 (L01)
PRINT " is "
L0172: PRINT_RET "already here."
L0173: JE Gef,#02 [FALSE] L0174
PRINT "You haven't got "
CALL_2N R0009 (L01)
PRINT_RET "."
L0174: JE Gef,#03 [FALSE] L0175
PRINT "(first taking "
CALL_2N R0102 (L01)
PRINT_RET " off)"
L0175: JE Gef,#04 [FALSE] L0176
PRINT_RET "Dropped."
L0176: RTRUE
L0177: JE Ge9,#11 [FALSE] L0185
STORE Gef,L00
JE Gef,#01 [FALSE] L0180
TEST_ATTR L01,#1e [FALSE] L0178
PRINT "They are"
JUMP L0179
L0178: PRINT "It is "
L0179: PRINT_RET " unfortunately closed."
L0180: JE Gef,#02 [FALSE] L0183
TEST_ATTR L01,#1e [FALSE] L0181
PRINT "But they aren't"
JUMP L0182
L0181: PRINT "But it isn't"
L0182: PRINT_RET " there now."
L0183: JE Gef,#03 [FALSE] L0184
PRINT_RET "Removed."
L0184: RTRUE
L0185: JE Ge9,#12 [FALSE] L0194
STORE Gef,L00
JE Gef,#01 [FALSE] L0186
PRINT "You need to be holding "
CALL_2N R0102 (L01)
PRINT " before you can put "
CALL_2N R0010 (L01)
PRINT_RET " on top of something else."
L0186: JE Gef,#02 [FALSE] L0187
PRINT_RET "You can't put something on top of itself."
L0187: JE Gef,#03 [FALSE] L0188
PRINT "Putting things on "
CALL_2N R0102 (L01)
PRINT_RET " would achieve nothing."
L0188: JE Gef,#04 [FALSE] L0189
PRINT_RET "You lack the dexterity."
L0189: JE Gef,#05 [FALSE] L0190
PRINT "(first taking "
CALL_2N R0010 (L01)
PRINT_RET " off)
"
L0190: JE Gef,#06 [FALSE] L0191
PRINT "There is no more room on "
CALL_2N R0102 (L01)
PRINT_RET "."
L0191: JE Gef,#07 [FALSE] L0192
PRINT_RET "Done."
L0192: JE Gef,#08 [FALSE] L0193
PRINT "You put "
CALL_2N R0102 (L01)
PRINT " on "
CALL_2N R0102 (G2b)
PRINT_RET "."
L0193: RTRUE
L0194: JE Ge9,#13 [FALSE] L0204
STORE Gef,L00
JE Gef,#01 [FALSE] L0195
PRINT "You need to be holding "
CALL_2N R0102 (L01)
PRINT " before you can put "
CALL_2N R0010 (L01)
PRINT_RET " into something else."
L0195: JE Gef,#02 [FALSE] L0196
CALL_2N R0012 (L01)
PRINT_RET " can't contain things."
L0196: JE Gef,#03 [FALSE] L0197
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " closed."
L0197: JE Gef,#04 [FALSE] L0198
PRINT "You'll need to take "
CALL_2N R0010 (L01)
PRINT_RET " off first."
L0198: JE Gef,#05 [FALSE] L0199
PRINT_RET "You can't put something inside itself."
L0199: JE Gef,#06 [FALSE] L0200
PRINT "(first taking "
CALL_2N R0010 (L01)
PRINT_RET " off)
"
L0200: JE Gef,#07 [FALSE] L0201
PRINT "There is no more room in "
CALL_2N R0102 (L01)
PRINT_RET "."
L0201: JE Gef,#08 [FALSE] L0202
PRINT_RET "Done."
L0202: JE Gef,#09 [FALSE] L0203
PRINT "You put "
CALL_2N R0102 (L01)
PRINT " into "
CALL_2N R0102 (G2b)
PRINT_RET "."
L0203: RTRUE
L0204: JE Ge9,#14 [FALSE] L0208
STORE Gef,L00
JE Gef,#01 [FALSE] L0205
CALL_2N R0103 (L01)
PRINT_RET " can't contain things."
L0205: JE Gef,#02 [FALSE] L0206
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " closed."
L0206: JE Gef,#03 [FALSE] L0207
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " empty already."
L0207: RTRUE
L0208: JE Ge9,#15 [FALSE] L0214
STORE Gef,L00
JE Gef,#01 [FALSE] L0209
PRINT "You aren't holding "
CALL_2N R0102 (L01)
PRINT_RET "."
L0209: JE Gef,#02 [FALSE] L0210
PRINT "You juggle "
CALL_2N R0102 (L01)
PRINT_RET " for a while, but don't achieve much."
L0210: JE Gef,#03 [FALSE] L0213
CALL_2N R0103 (L01)
TEST_ATTR L01,#1e [FALSE] L0211
PRINT " don't"
JUMP L0212
L0211: PRINT " doesn't"
L0212: PRINT_RET " seem interested."
L0213: RTRUE
L0214: JE Ge9,#16 [FALSE] L0217
STORE Gef,L00
JE Gef,#01 [FALSE] L0215
PRINT "You aren't holding "
CALL_2N R0102 (L01)
PRINT_RET "."
L0215: JE Gef,#02 [FALSE] L0216
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " unimpressed."
L0216: RTRUE
L0217: JE Ge9,#17 [FALSE] L0235
STORE Gef,L00
JE Gef,#01 [FALSE] L0220
PRINT "But you're already "
TEST_ATTR L01,#14 [FALSE] L0218
PRINT "on "
JUMP L0219
L0218: PRINT "in "
L0219: CALL_2N R0102 (L01)
PRINT_RET "."
L0220: JE Gef,#02 [FALSE] L0223
TEST_ATTR L01,#1e [FALSE] L0221
PRINT "They're"
JUMP L0222
L0221: PRINT "That's"
L0222: PRINT_RET " not something you can enter."
L0223: JE Gef,#03 [FALSE] L0224
PRINT "You can't get into the closed "
CALL_2N R0104 (L01)
PRINT_RET "."
L0224: JE Gef,#04 [FALSE] L0225
PRINT_RET "You can only get into something freestanding."
L0225: JE Gef,#05 [FALSE] L0228
PRINT "You get "
TEST_ATTR L01,#14 [FALSE] L0226
PRINT "onto "
JUMP L0227
L0226: PRINT "into "
L0227: CALL_2N R0102 (L01)
PRINT_RET "."
L0228: JE Gef,#06 [FALSE] L0231
PRINT "(getting "
TEST_ATTR L01,#14 [FALSE] L0229
PRINT "off "
JUMP L0230
L0229: PRINT "out of "
L0230: CALL_2N R0102 (L01)
PRINT_RET ")"
L0231: JE Gef,#07 [FALSE] L0234
TEST_ATTR L01,#14 [FALSE] L0232
PRINT "(getting onto "
CALL_2N R0102 (L01)
PRINT_RET ")
"
L0232: TEST_ATTR L01,#04 [FALSE] L0233
PRINT "(getting into "
CALL_2N R0102 (L01)
PRINT_RET ")
"
L0233: PRINT "(entering "
CALL_2N R0102 (L01)
PRINT_RET ")
"
L0234: RTRUE
L0235: JE Ge9,#18 [FALSE] L0236
PRINT "But you aren't on "
CALL_2N R0102 (L01)
PRINT_RET " at the moment."
L0236: JE Ge9,#19 [FALSE] L0242
STORE Gef,L00
JE Gef,#01 [FALSE] L0237
PRINT_RET "But you aren't in anything at the moment."
L0237: JE Gef,#02 [FALSE] L0238
PRINT "You can't get out of the closed "
CALL_2N R0104 (L01)
PRINT_RET "."
L0238: JE Gef,#03 [FALSE] L0241
PRINT "You get "
TEST_ATTR L01,#14 [FALSE] L0239
PRINT "off "
JUMP L0240
L0239: PRINT "out of "
L0240: CALL_2N R0102 (L01)
PRINT_RET "."
L0241: RTRUE
L0242: JE Ge9,#1a [FALSE] L0243
PRINT_RET "You'll have to say which compass direction to go in."
L0243: JE Ge9,#1b [FALSE] L0253
STORE Gef,L00
JE Gef,#01 [FALSE] L0246
PRINT "You'll have to get "
TEST_ATTR L01,#14 [FALSE] L0244
PRINT "off "
JUMP L0245
L0244: PRINT "out of "
L0245: CALL_2N R0102 (L01)
PRINT_RET " first."
L0246: JE Gef,#02 [FALSE] L0247
PRINT_RET "You can't go that way."
L0247: JE Gef,#03 [FALSE] L0248
PRINT "You are unable to climb "
CALL_2N R0102 (L01)
PRINT_RET "."
L0248: JE Gef,#04 [FALSE] L0249
PRINT "You are unable to descend by "
CALL_2N R0102 (L01)
PRINT_RET "."
L0249: JE Gef,#05 [FALSE] L0250
PRINT "You can't, since "
CALL_2N R0102 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " in the way."
L0250: JE Gef,#06 [FALSE] L0252
PRINT "You can't, since "
CALL_2N R0102 (L01)
TEST_ATTR L01,#1e [FALSE] L0251
PRINT_RET " lead nowhere."
L0251: PRINT_RET " leads nowhere."
L0252: RTRUE
L0253: JE Ge9,#1c [FALSE] L0254
PRINT_RET " is now in its normal "brief" printing mode, which
gives long descriptions of places never before visited and short descriptions
otherwise."
L0254: JE Ge9,#1d [FALSE] L0255
PRINT_RET " is now in its "verbose" mode, which always gives long
descriptions of locations (even if you've been there before)."
L0255: JE Ge9,#1e [FALSE] L0256
PRINT_RET " is now in its "superbrief" mode, which always gives
short descriptions of locations (even if you haven't been there before)."
L0256: JE Ge9,#1f [FALSE] L0270
STORE Gef,L00
JE Gef,#01 [FALSE] L0257
PRINT " (on "
CALL_2N R0102 (L01)
PRINT ")"
JUMP L0269
L0257: JE Gef,#02 [FALSE] L0258
PRINT " (in "
CALL_2N R0102 (L01)
PRINT ")"
JUMP L0269
L0258: JE Gef,#03 [FALSE] L0259
PRINT " (as "
PRINT_OBJ L01
PRINT ")"
JUMP L0269
L0259: JE Gef,#04 [FALSE] L0261
PRINT "
On "
CALL_2N R0102 (L01)
ADD #0008,#0010 -> -(SP)
ADD (SP)+,#0080 -> -(SP)
ADD (SP)+,#0040 -> -(SP)
ADD (SP)+,#0400 -> -(SP)
ADD (SP)+,#0800 -> -(SP)
GET_CHILD L01 -> -(SP) [FALSE] L0260
L0260: CALL_VN R0120 ((SP)+,(SP)+)
PRINT_RET "."
L0261: JE L01,G00 [TRUE] L0264
TEST_ATTR L01,#14 [FALSE] L0262
PRINT "
On "
JUMP L0263
L0262: PRINT "
In "
L0263: CALL_2N R0102 (L01)
PRINT " you"
JUMP L0265
L0264: PRINT "
You"
L0265: PRINT " can "
JE L00,#05 [FALSE] L0266
PRINT "also "
L0266: PRINT "see "
ADD #0008,#0200 -> -(SP)
ADD (SP)+,#0010 -> -(SP)
ADD (SP)+,#0080 -> -(SP)
ADD (SP)+,#0040 -> -(SP)
ADD (SP)+,#0800 -> -(SP)
GET_CHILD L01 -> -(SP) [FALSE] L0267
L0267: CALL_VN R0120 ((SP)+,(SP)+)
JE L01,G00 [TRUE] L0268
PRINT_RET "."
L0268: PRINT_RET " here."
L0269: RTRUE
L0270: JE Ge9,#20 [FALSE] L0275
STORE Gef,L00
JE Gef,#01 [FALSE] L0271
PRINT_RET "Darkness, noun. An absence of light to see by."
L0271: JE Gef,#02 [FALSE] L0272
PRINT "You see nothing special about "
CALL_2N R0102 (L01)
PRINT_RET "."
L0272: JE Gef,#03 [FALSE] L0274
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT " currently switched "
TEST_ATTR L01,#0d [FALSE] L0273
PRINT_RET "on."
L0273: PRINT_RET "off."
L0274: RTRUE
L0275: JE Ge9,#21 [FALSE] L0278
STORE Gef,L00
JE Gef,#01 [FALSE] L0276
PRINT_RET "But it's dark."
L0276: JE Gef,#02 [FALSE] L0277
PRINT_RET "You find nothing of interest."
L0277: RTRUE
L0278: JE Ge9,#22 [FALSE] L0288
STORE Gef,L00
JE Gef,#01 [FALSE] L0279
PRINT_RET "But it's dark."
L0279: JE Gef,#02 [FALSE] L0280
PRINT "There is nothing on "
CALL_2N R0102 (L01)
PRINT_RET "."
L0280: JE Gef,#03 [FALSE] L0282
PRINT "On "
CALL_2N R0102 (L01)
ADD #0040,#0008 -> -(SP)
ADD (SP)+,#0400 -> -(SP)
ADD (SP)+,#0800 -> -(SP)
GET_CHILD L01 -> -(SP) [FALSE] L0281
L0281: CALL_VN R0120 ((SP)+,(SP)+)
PRINT_RET "."
L0282: JE Gef,#04 [FALSE] L0283
PRINT_RET "You find nothing of interest."
L0283: JE Gef,#05 [FALSE] L0284
PRINT "You can't see inside, since "
CALL_2N R0102 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " closed."
L0284: JE Gef,#06 [FALSE] L0285
CALL_2N R0103 (L01)
PRINT " "
CALL_2N R0011 (L01)
PRINT_RET " empty."
L0285: JE Gef,#07 [FALSE] L0287
PRINT "In "
CALL_2N R0102 (L01)
ADD #0040,#0008 -> -(SP)
ADD (SP)+,#0400 -> -(SP)
ADD (SP)+,#0800 -> -(SP)
GET_CHILD L01 -> -(SP) [FALSE] L0286
L0286: CALL_VN R0120 ((SP)+,(SP)+)
PRINT_RET "."
L0287: RTRUE
L0288: JE Ge9,#23 [FALSE] L0297
STORE Gef,L00
JE Gef,#01 [FALSE] L0291
TEST_ATTR L01,#1e [FALSE] L0289
PRINT "They don't "
JUMP L0290
L0289: PRINT "That doesn't "
L0290: PRINT_RET "seem to be something you can unlock."
L0291: JE Gef,#02 [FALSE] L0292
CALL_2N R0013 (L01)
PRINT_RET " unlocked at the moment."
L0292: JE Gef,#03 [FALSE] L0295
TEST_ATTR L01,#1e [FALSE] L0293
PRINT "Those don't "
JUMP L0294
L0293: PRINT "That doesn't "
L0294: PRINT_RET "seem to fit the lock."
L0295: JE Gef,#04 [FALSE] L0296
PRINT "You unlock "
CALL_2N R0102 (L01)
PRINT_RET "."
L0296: RTRUE
L0297: JE Ge9,#24 [FALSE] L0307
STORE Gef,L00
JE Gef,#01 [FALSE] L0300
TEST_ATTR L01,#1e [FALSE] L0298
PRINT "They don't "
JUMP L0299
L0298: PRINT "That doesn't "
L0299: PRINT_RET "seem to be something you can lock."
L0300: JE Gef,#02 [FALSE] L0301
CALL_2N R0013 (L01)
PRINT_RET " locked at the moment."
L0301: JE Gef,#03 [FALSE] L0302
PRINT "First you'll have to close "
CALL_2N R0102 (L01)
PRINT_RET "."
L0302: JE Gef,#04 [FALSE] L0305
TEST_ATTR L01,#1e [FALSE] L0303
PRINT "Those don't "
JUMP L0304
L0303: PRINT "That doesn't "
L0304: PRINT_RET "seem to fit the lock."
L0305: JE Gef,#05 [FALSE] L0306
PRINT "You lock "
CALL_2N R0102 (L01)
PRINT_RET "."
L0306: RTRUE
L0307: JE Ge9,#25 [FALSE] L0311
STORE Gef,L00
JE Gef,#01 [FALSE] L0308
CALL_2N R0013 (L01)
PRINT_RET " not something you can switch."
L0308: JE Gef,#02 [FALSE] L0309
CALL_2N R0013 (L01)
PRINT_RET " already on."
L0309: JE Gef,#03 [FALSE] L0310
PRINT "You switch "
CALL_2N R0102 (L01)
PRINT_RET " on."
L0310: RTRUE
L0311: JE Ge9,#26 [FALSE] L0315
STORE Gef,L00
JE Gef,#01 [FALSE] L0312
CALL_2N R0013 (L01)
PRINT_RET " not something you can switch."
L0312: JE Gef,#02 [FALSE] L0313
CALL_2N R0013 (L01)
PRINT_RET " already off."
L0313: JE Gef,#03 [FALSE] L0314
PRINT "You switch "
CALL_2N R0102 (L01)
PRINT_RET " off."
L0314: RTRUE
L0315: JE Ge9,#27 [FALSE] L0325
STORE Gef,L00
JE Gef,#01 [FALSE] L0316
CALL_2N R0013 (L01)
PRINT_RET " not something you can open."
L0316: JE Gef,#02 [FALSE] L0319
TEST_ATTR L01,#1e [FALSE] L0317
PRINT "They seem "
JUMP L0318
L0317: PRINT "It seems "
L0318: PRINT_RET "to be locked."
L0319: JE Gef,#03 [FALSE] L0320
CALL_2N R0013 (L01)
PRINT_RET " already open."
L0320: JE Gef,#04 [FALSE] L0323
PRINT "You open "
CALL_2N R0102 (L01)
PRINT ", revealing "
ADD #0008,#0040 -> -(SP)
ADD (SP)+,#0800 -> -(SP)
GET_CHILD L01 -> -(SP) [FALSE] L0321
L0321: CALL_VS R0120 ((SP)+,(SP)+) -> -(SP)
JZ (SP)+ [FALSE] L0322
PRINT_RET "nothing."
L0322: PRINT_RET "."
L0323: JE Gef,#05 [FALSE] L0324
PRINT "You open "
CALL_2N R0102 (L01)
PRINT_RET "."
L0324: RTRUE
L0325: JE Ge9,#28 [FALSE] L0329
STORE Gef,L00
JE Gef,#01 [FALSE] L0326
CALL_2N R0013 (L01)
PRINT_RET " not something you can close."
L0326: JE Gef,#02 [FALSE] L0327
CALL_2N R0013 (L01)
PRINT_RET " already closed."
L0327: JE Gef,#03 [FALSE] L0328
PRINT "You close "
CALL_2N R0102 (L01)
PRINT_RET "."
L0328: RTRUE
L0329: JE Ge9,#29 [FALSE] L0332
STORE Gef,L00
JE Gef,#01 [FALSE] L0330
PRINT "You're not wearing "
CALL_2N R0009 (L01)
PRINT_RET "."
L0330: JE Gef,#02 [FALSE] L0331
PRINT "You take off "
CALL_2N R0102 (L01)
PRINT_RET "."
L0331: RTRUE
L0332: JE Ge9,#2a [FALSE] L0337
STORE Gef,L00
JE Gef,#01 [FALSE] L0333
PRINT "You can't wear "
CALL_2N R0009 (L01)
PRINT_RET "!"
L0333: JE Gef,#02 [FALSE] L0334
PRINT "You're not holding "
CALL_2N R0009 (L01)
PRINT_RET "!"
L0334: JE Gef,#03 [FALSE] L0335
PRINT "You're already wearing "
CALL_2N R0009 (L01)
PRINT_RET "!"
L0335: JE Gef,#04 [FALSE] L0336
PRINT "You put on "
CALL_2N R0102 (L01)
PRINT_RET "."
L0336: RTRUE
L0337: JE Ge9,#2b [FALSE] L0340
STORE Gef,L00
JE Gef,#01 [FALSE] L0338
CALL_2N R0013 (L01)
PRINT_RET " plainly inedible."
L0338: JE Gef,#02 [FALSE] L0339
PRINT "You eat "
CALL_2N R0102 (L01)
PRINT_RET ". Not bad."
L0339: RTRUE
L0340: JE Ge9,#2c,#2d [FALSE] L0341
PRINT_RET "That was a rhetorical question."
L0341: JE Ge9,#2e [FALSE] L0342
PRINT_RET "This dangerous act would achieve little."
L0342: JE Ge9,#2f [FALSE] L0343
PRINT_RET "Nothing practical results from your prayer."
L0343: JE Ge9,#30 [FALSE] L0344
PRINT_RET "The dreadful truth is, this is not a dream."
L0344: JE Ge9,#31 [FALSE] L0345
PRINT_RET "That seems unnecessary."
L0345: JE Ge9,#32 [FALSE] L0346
PRINT_RET "Keep your mind on the game."
L0346: JE Ge9,#33 [FALSE] L0347
PRINT_RET "What a good idea."
L0347: JE Ge9,#34 [FALSE] L0348
PRINT_RET "You smell nothing unexpected."
L0348: JE Ge9,#35 [FALSE] L0349
PRINT_RET "You hear nothing unexpected."
L0349: JE Ge9,#36 [FALSE] L0350
PRINT_RET "You taste nothing unexpected."
L0350: JE Ge9,#37 [FALSE] L0354
STORE Gef,L00
JE Gef,#01 [FALSE] L0351
PRINT_RET "Keep your hands to yourself!"
L0351: JE Gef,#02 [FALSE] L0352
PRINT_RET "You feel nothing unexpected."
L0352: JE Gef,#03 [FALSE] L0353
PRINT_RET "If you think that'll help."
L0353: RTRUE
L0354: JE Ge9,#38 [FALSE] L0355
PRINT_RET "Digging would achieve nothing here."
L0355: JE Ge9,#39 [FALSE] L0356
PRINT "Cutting "
CALL_2N R0009 (L01)
PRINT_RET " up would achieve little."
L0356: JE Ge9,#3a [FALSE] L0357
PRINT_RET "You jump on the spot, fruitlessly."
L0357: JE Ge9,#3b,#3c [FALSE] L0358
PRINT_RET "You would achieve nothing by this."
L0358: JE Ge9,#3d [FALSE] L0359
PRINT_RET "There's nothing suitable to drink here."
L0359: JE Ge9,#3e [FALSE] L0360
PRINT_RET "But there's no water here to carry."
L0360: JE Ge9,#3f [FALSE] L0361
PRINT_RET "Oh, don't apologise."
L0361: JE Ge9,#40 [FALSE] L0362
PRINT_RET "Real adventurers do not use such language."
L0362: JE Ge9,#41 [FALSE] L0363
PRINT_RET "Quite."
L0363: JE Ge9,#42 [FALSE] L0364
PRINT_RET "Violence isn't the answer to this one."
L0364: JE Ge9,#43 [FALSE] L0365
PRINT_RET "There's not enough water to swim in."
L0365: JE Ge9,#44 [FALSE] L0366
PRINT_RET "There's nothing sensible to swing here."
L0366: JE Ge9,#45 [FALSE] L0367
PRINT "You can't usefully blow "
CALL_2N R0009 (L01)
PRINT_RET "."
L0367: JE Ge9,#46 [FALSE] L0368
PRINT_RET "You achieve nothing by this."
L0368: JE Ge9,#47 [FALSE] L0369
PRINT "No, you can't set "
CALL_2N R0009 (L01)
PRINT_RET "."
L0369: JE Ge9,#48 [FALSE] L0370
PRINT "No, you can't set "
CALL_2N R0009 (L01)
PRINT_RET " to anything."
L0370: JE Ge9,#49 [FALSE] L0371
PRINT_RET "You wave, feeling foolish."
L0371: JE Ge9,#4a [FALSE] L0374
STORE Gef,L00
JE Gef,#01 [FALSE] L0372
PRINT "But you aren't holding "
CALL_2N R0009 (L01)
PRINT_RET "."
L0372: JE Gef,#02 [FALSE] L0373
PRINT "You look ridiculous waving "
CALL_2N R0102 (L01)
PRINT_RET "."
L0373: RTRUE
L0374: JE Ge9,#4b,#4c,#4d [FALSE] L0381
STORE Gef,L00
JE Gef,#01 [FALSE] L0377
TEST_ATTR L01,#1e [FALSE] L0375
PRINT "Those are "
JUMP L0376
L0375: PRINT "It is "
L0376: PRINT_RET "fixed in place."
L0377: JE Gef,#02 [FALSE] L0378
PRINT_RET "You are unable to."
L0378: JE Gef,#03 [FALSE] L0379
PRINT_RET "Nothing obvious happens."
L0379: JE Gef,#04 [FALSE] L0380
PRINT_RET "That would be less than courteous."
L0380: RTRUE
L0381: JE Ge9,#4e [FALSE] L0385
STORE Gef,L00
JE Gef,#01 [FALSE] L0382
PRINT_RET "Is that the best you can think of?"
L0382: JE Gef,#02 [FALSE] L0383
PRINT_RET "That's not a direction."
L0383: JE Gef,#03 [FALSE] L0384
PRINT_RET "Not that way you can't."
L0384: RTRUE
L0385: JE Ge9,#4f [FALSE] L0388
STORE Gef,L00
JE Gef,#01 [FALSE] L0386
PRINT_RET "Keep your hands to yourself."
L0386: JE Gef,#02 [FALSE] L0387
PRINT_RET "You achieve nothing by this."
L0387: RTRUE
L0388: JE Ge9,#50 [FALSE] L0391
STORE Gef,L00
JE Gef,#01 [FALSE] L0389
PRINT_RET "Futile."
L0389: JE Gef,#02 [FALSE] L0390
PRINT_RET "You lack the nerve when it comes to the crucial
moment."
L0390: RTRUE
L0391: JE Ge9,#51 [FALSE] L0394
STORE Gef,L00
JE Gef,#01 [FALSE] L0392
PRINT_RET "You talk to yourself a while."
L0392: JE Gef,#02 [FALSE] L0393
PRINT_RET "This provokes no reaction."
L0393: RTRUE
L0394: JE Ge9,#52,#53 [FALSE] L0395
PRINT_RET "There is no reply."
L0395: JE Ge9,#54 [FALSE] L0396
PRINT_RET "Nothing is on sale."
L0396: JE Ge9,#55 [FALSE] L0397
PRINT_RET "Your singing is abominable."
L0397: JE Ge9,#56 [FALSE] L0398
PRINT_RET "I don't think much is to be achieved by that."
L0398: JE Ge9,#57 [FALSE] L0399
PRINT_RET "Time passes."
L0399: JE Ge9,#58 [FALSE] L0400
PRINT_RET "You aren't feeling especially drowsy."
L0400: JE Ge9,#59 [FALSE] L0401
PRINT "You discover nothing of interest in "
CALL_2N R0102 (L01)
PRINT_RET "."
L0401: RTRUE
Routine R0015, 0 locals
CALL_VS R0236 (#1007,#11) -> -(SP)
RET_POPPED
Routine R0016, 0 locals
CALL_VS R0236 (#1007,#12) -> -(SP)
RET_POPPED
Routine R0017, 0 locals
CALL_VS R0236 (#1007,#13) -> -(SP)
RET_POPPED
Routine R0018, 1 local
JE L00,#0f [FALSE] L0001
STORE G51,#01
STORE G52,#0f
RTRUE
L0001: LOADB L00,#00 -> -(SP)
AND (SP)+,#0f -> G51
ADD L00,#01 -> -(SP)
LOADW (SP)+,#00 -> G52
RTRUE
Routine R0019, 2 locals
STORE L01,#00
L0001: JL L01,#20 [FALSE] L0002
STOREW #280e,L01,#0f
STOREW #278e,L01,#01
STOREW #27ce,L01,#0f
INC L01
JUMP L0001
L0002: LOADB L00,#01 -> -(SP)
LOADB L00,#00 -> -(SP)
MUL #0100,(SP)+ -> -(SP)
ADD (SP)+,(SP)+ -> G4e
AND G4e,#0400 -> -(SP)
JZ (SP)+ [FALSE] L0003
PUSH #00
JUMP L0004
L0003: PUSH #01
L0004: PULL G4f
AND G4e,#03ff -> G4e
DEC L00
STORE G4a,#00
STORE L01,#00
L0005: ADD L00,#03 -> L00
LOADB L00,#00 -> -(SP)
JE (SP)+,#0f [FALSE] L0006
JUMP L0008
L0006: STOREW #280e,L01,L00
LOADW #280e,L01 -> -(SP)
CALL_2N R0018 ((SP)+)
JE G51,#02 [TRUE] L0007
INC G4a
L0007: STOREW #278e,L01,G51
STOREW #27ce,L01,G52
INC L01
JUMP L0005
L0008: ADD L00,#01 -> -(SP)
RET_POPPED
Routine R0020, 1 local
CALL_2N R0022 (L00)
RFALSE
Routine R0021, 7 locals
CALL_1N R0090
L0001: STORE L03,#00
L0002: JL L03,#0a [FALSE] L0003
LOADB L01,L03 -> -(SP)
STOREB #2bbb,L03,(SP)+
INC L03
JUMP L0002
L0003: STOREB L00,#00,#78
STOREB L01,#00,#40
CALL_2N R0236 (#1008)
CALL_1N R0298
STORE Gef,#00
STORE Gec,L00
STOREB Gec,#01,#00
CALL_1N R0239
READ Gec,L01 -> Gef
LOADB L01,#01 -> L02
JZ L02 [FALSE] L0004
CALL_VN R0236 (#1007,#0a)
JUMP L0001
L0004: LOADW L01,#01 -> L04
JE L04,"oops","o","oops" [FALSE] L0005
JUMP L0016
L0005: JE L04,"undo","undo","undo" [FALSE] L0012
LOADB #2a47,#01 -> -(SP)
JE (SP)+,#01 [FALSE] L0012
JE G08,#01 [FALSE] L0006
CALL_VN R0236 (#1007,#0b)
JUMP L0001
L0006: JZ G05 [FALSE] L0007
CALL_VN R0236 (#1007,#06)
JUMP L0001
L0007: JE G05,#01 [FALSE] L0008
JUMP L0010
L0008: JE G06,#01 [FALSE] L0009
CALL_VN R0236 (#1007,#0c)
JUMP L0001
L0009: RESTORE_UNDO -> L03
JZ L03 [FALSE] L0011
L0010: CALL_VN R0236 (#1007,#07)
L0011: JUMP L0001
L0012: SAVE_UNDO -> L03
STORE G06,#00
STORE G05,#02
JE L03,#ffff [FALSE] L0013
STORE G05,#00
L0013: JZ L03 [FALSE] L0014
STORE G05,#01
L0014: JE L03,#02 [FALSE] L0015
SET_TEXT_STYLE BOLDFACE
CALL_2N R0104 (G00)
PRINT "
"
SET_TEXT_STYLE ROMAN
CALL_VN R0236 (#1007,#0d)
STORE G06,#01
JUMP L0001
L0015: RET L02
L0016: JZ G78 [FALSE] L0017
CALL_VN R0236 (#1007,#0e)
JUMP L0001
L0017: JE L02,#01 [FALSE] L0018
CALL_VN R0236 (#1007,#0f)
JUMP L0001
L0018: JG L02,#02 [FALSE] L0019
CALL_VN R0236 (#1007,#10)
JUMP L0001
L0019: LOADW L01,#03 -> L05
LOADW L01,#04 -> L06
STORE L03,#00
L0020: JL L03,#0a [FALSE] L0021
LOADB #2bbb,L03 -> -(SP)
STOREB L01,L03,(SP)+
INC L03
JUMP L0020
L0021: MUL #02,G78 -> -(SP)
SUB (SP)+,#01 -> L04
STOREW L01,L04,L05
ADD L04,#01 -> -(SP)
STOREW L01,(SP)+,L06
RET L02
Routine R0022, 11 locals
JE G3e,#01 [FALSE] L0003
STORE L05,#00
L0001: JL L05,#08 [FALSE] L0002
LOADW #26ee,L05 -> -(SP)
STOREW L00,L05,(SP)+
INC L05
JUMP L0001
L0002: STORE G3e,#00
RTRUE
L0003: JE G7a,#01 [FALSE] L0004
STORE G7a,#00
TOKENISE #29ce,#2a47
JUMP L0005
L0004: CALL_VN R0021 (#29ce,#2a47)
L0005: STORE G33,#01
LOADB #2a47,#01 -> G74
STORE G73,#01
CALL_1N R0003
TOKENISE #29ce,#2a47
CALL_1N R0299
LOADB #2a47,#01 -> G74
STORE L07,#00
STORE G76,#01
STORE G34,G12
CALL_2S R0023 (G12) -> G35
STORE G77,#00
L0006: STORE G69,#00
STORE G4e,#ffff
L0007: STORE G73,G76
CALL_1S R0056 -> G75
JE G75,#ffff [FALSE] L0008
STORE G42,#01
JUMP L0077
L0008: JE G75,"g","again" [FALSE] L0009
STORE G75,"again"
L0009: JE G75,"again" [FALSE] L0014
JE G34,G12 [TRUE] L0010
CALL_VN R0236 (#1007,#14)
JUMP L0004
L0010: LOADB #2b42,#01 -> -(SP)
JZ (SP)+ [FALSE] L0011
CALL_VN R0236 (#1007,#15)
JUMP L0004
L0011: STORE L05,#00
L0012: JL L05,#78 [FALSE] L0013
LOADB #2b42,L05 -> -(SP)
STOREB #29ce,L05,(SP)+
INC L05
JUMP L0012
L0013: JUMP L0005
L0014: JE G75,"again" [TRUE] L0016
STORE L05,#00
L0015: JL L05,#78 [FALSE] L0016
LOADB #29ce,L05 -> -(SP)
STOREB #2b42,L05,(SP)+
INC L05
JUMP L0015
L0016: JZ G77 [FALSE] L0021
CALL_VS R0084 (G34,#1c) -> L05
JL L05,#00 [FALSE] L0017
STORE G77,G76
SUB #00,L05 -> L05
L0017: JE L05,#01 [FALSE] L0018
STOREW L00,#00,G27
STOREW L00,#01,G2a
STOREW L00,#02,G2b
RTRUE
L0018: JZ L05 [TRUE] L0019
STORE G75,L05
DEC G73
DEC G76
JUMP L0020
L0019: STORE G73,G76
CALL_1S R0055 -> G75
L0020: JUMP L0022
L0021: STORE G77,#00
L0022: JZ G75 [TRUE] L0023
LOADB G75,#06 -> -(SP)
AND (SP)+,#01 -> -(SP)
JZ (SP)+ [FALSE] L0036
L0023: STORE G73,G76
STORE G5a,#00
STORE G53,#00
CALL_VS R0029 (#06,#00,#00) -> L09
JE L09,#2710 [FALSE] L0024
JUMP L0005
L0024: JZ L09 [TRUE] L0025
STOREW L00,#00,#1b
STOREW L00,#01,#01
STOREW L00,#02,L09
JUMP L0104
L0025: JE G34,G12 [FALSE] L0029
STORE L06,#02
L0026: JG L06,G74 [TRUE] L0028
CALL_1S R0055 -> L05
JE L05,"comma," [FALSE] L0027
JUMP L0030
L0027: INC L06
JUMP L0026
L0028: CALL_2S R0302 (G75) -> G75
JZ G75 [TRUE] L0029
JUMP L0036
L0029: STORE G42,#0c
JUMP L0077
L0030: SUB G73,#01 -> L06
JE L06,#01 [FALSE] L0031
CALL_VN R0236 (#1007,#16)
JUMP L0004
L0031: STORE G73,#01
STORE G55,#01
STORE G68,#01
CALL_VS R0029 (G12,G35,#06) -> L09
STORE G68,#00
JE L09,#2710 [FALSE] L0032
JUMP L0005
L0032: JZ L09 [FALSE] L0033
CALL_VN R0236 (#1007,#17)
JUMP L0004
L0033: TEST_ATTR L09,#00 [TRUE] L0034
TEST_ATTR L09,#16 [TRUE] L0034
CALL_VN R0236 (#1007,#18,L09)
JUMP L0004
L0034: JE G73,L06 [TRUE] L0035
CALL_VN R0236 (#1007,#19)
JUMP L0004
L0035: CALL_2N R0071 (L09)
ADD L06,#01 -> G76
STORE G34,L09
CALL_2S R0023 (L09) -> G35
JUMP L0007
L0036: LOADB G75,#06 -> -(SP)
AND (SP)+,#02 -> -(SP)
DIV (SP)+,#02 -> G36
JE G36,#01 [FALSE] L0037
JE G34,G12 [TRUE] L0037
STORE G42,#0c
STORE G36,#00
JUMP L0077
L0037: LOADB G75,#07 -> -(SP)
SUB #ff,(SP)+ -> L05
LOADW #00,#07 -> -(SP)
LOADW (SP)+,L05 -> L01
LOADB L01,#00 -> -(SP)
SUB (SP)+,#01 -> L03
STORE G64,#ffff
STORE G65,#ffff
STORE G42,#01
STORE G43,#01
ADD L01,#01 -> L04
STORE L02,#00
L0038: JG L02,L03 [TRUE] L0077
STORE L05,#00
L0039: JL L05,#20 [FALSE] L0040
STOREW #280e,L05,#0f
STOREW #278e,L05,#01
STOREW #27ce,L05,#0f
INC L05
JUMP L0039
L0040: CALL_2S R0019 (L04) -> L04
STORE G40,#00
STORE G4b,#00
STORE G46,#00
STORE G47,#00
STORE G39,#00
STORE G3a,#00
STOREW #266e,#00,#00
STORE G59,#00
STORE G41,#01
ADD G76,#01 -> G73
STORE G50,#ffff
STORE G5a,#00
STORE L05,#00
STORE L0a,#00
STORE G44,#00
L0041: LOADW #280e,G44 -> -(SP)
JE (SP)+,#0f [TRUE] L0051
STORE G69,#00
LOADW #278e,G44 -> -(SP)
JE (SP)+,#02 [TRUE] L0042
INC L05
L0042: LOADW #278e,G44 -> -(SP)
JE (SP)+,#01 [FALSE] L0050
LOADW #27ce,G44 -> -(SP)
JE (SP)+,#02 [FALSE] L0043
STORE L0a,#01
L0043: LOADW #27ce,G44 -> -(SP)
JE (SP)+,#04,#05 [FALSE] L0050
JE L05,#01 [FALSE] L0050
INC G44
LOADW #278e,G44 -> -(SP)
JE (SP)+,#02 [FALSE] L0049
L0044: LOADW #278e,G44 -> -(SP)
JE (SP)+,#02 [FALSE] L0045
INC G44
JUMP L0044
L0045: LOADW #278e,G44 -> -(SP)
JE (SP)+,#01 [FALSE] L0049
LOADW #27ce,G44 -> -(SP)
JZ (SP)+ [FALSE] L0049
L0046: JG G73,G74 [TRUE] L0049
SUB G44,#01 -> -(SP)
LOADW #27ce,(SP)+ -> -(SP)
CALL_1S R0055 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0048
CALL_VS R0029 (G35,G34,#00) -> L09
JE L09,#2710 [FALSE] L0047
JUMP L0005
L0047: JL L09,#02 [TRUE] L0048
STORE G50,L09
L0048: JUMP L0046
L0049: JUMP L0051
L0050: INC G44
JUMP L0041
L0051: STORE G62,#00
JZ L0a [TRUE] L0052
JE G4a,#01 [FALSE] L0052
JE G4e,#0f [FALSE] L0052
STORE G62,#01
L0052: STORE G40,#00
STORE G4b,#00
STORE G46,#00
STORE G47,#00
STORE G39,#00
STORE G3a,#00
STOREW #266e,#00,#00
STORE G41,#01
ADD G76,#01 -> G73
STORE G44,#01
L0053: STOREW #270e,G44,#ffff
STORE G69,#00
SUB G44,#01 -> -(SP)
LOADW #280e,(SP)+ -> L08
LOADW #280e,G44 -> G55
JE L08,#0f [TRUE] L0056
STORE G68,#00
SUB G44,#01 -> -(SP)
CALL_VS R0028 (L00,(SP)+) -> L09
STORE G68,#00
JE L09,#2710 [FALSE] L0054
JUMP L0005
L0054: JZ L09 [FALSE] L0055
JUMP L0073
L0055: JUMP L0072
L0056: JG G73,G74 [TRUE] L0061
CALL_1S R0055 -> L09
JE L09,"then","then","then" [TRUE] L0057
JE L09,"comma," [FALSE] L0058
L0057: STORE G7a,#01
SUB G73,#01 -> G7b
JUMP L0061
L0058: STORE L0a,#00
L0059: JL L0a,#20 [FALSE] L0060
LOADW #270e,L0a -> -(SP)
STOREW #274e,L0a,(SP)+
INC L0a
JUMP L0059
L0060: STORE G45,G44
STORE G41,#02
JUMP L0073
L0061: JL G46,#01 [TRUE] L0062
LOADW L00,#02 -> -(SP)
JZ (SP)+ [FALSE] L0062
LOADW L00,#03 -> -(SP)
CALL_2S R0031 ((SP)+) -> L09
JZ L09 [TRUE] L0062
STORE G41,L09
JUMP L0073
L0062: JL G46,#02 [TRUE] L0063
LOADW L00,#03 -> -(SP)
JZ (SP)+ [FALSE] L0063
LOADW L00,#02 -> -(SP)
CALL_2S R0031 ((SP)+) -> L09
JZ L09 [TRUE] L0063
STORE G41,L09
JUMP L0073
L0063: JE G62,#02 [FALSE] L0064
LOADW L00,#02 -> -(SP)
JE (SP)+,G34 [FALSE] L0064
STORE G42,#11
JUMP L0077
L0064: STORE G78,#00
JZ G4b [TRUE] L0065
PRINT "("
CALL_2N R0035 (G4b)
PRINT ")
"
L0065: STOREW L00,#00,G4e
STOREW L00,#01,G46
JZ G4f [TRUE] L0066
JE G46,#02 [FALSE] L0066
LOADW L00,#02 -> L05
LOADW L00,#03 -> -(SP)
STOREW L00,#02,(SP)+
STOREW L00,#03,L05
JE G47,#02 [FALSE] L0066
STORE L05,G48
STORE G48,G49
STORE G49,L05
L0066: JG G46,#00 [FALSE] L0067
LOADW L00,#02 -> -(SP)
JL (SP)+,#02 [TRUE] L0067
LOADW L00,#02 -> -(SP)
CALL_2N R0071 ((SP)+)
L0067: JZ G40 [TRUE] L0070
JE G34,G12 [FALSE] L0070
STORE G3e,#01
STORE L05,#00
L0068: JL L05,#08 [FALSE] L0069
LOADW L00,L05 -> -(SP)
STOREW #26ee,L05,(SP)+
INC L05
JUMP L0068
L0069: STOREW L00,#00,#0f
STOREW L00,#01,#01
STOREW L00,#02,G40
CALL_VN R0236 (#1007,#1a,G40)
L0070: JE G7a,#01 [FALSE] L0071
STORE G73,G7b
JUMP L0104
L0071: RTRUE
L0072: INC G44
JUMP L0053
L0073: JG G41,G42 [FALSE] L0074
STORE G42,G41
L0074: JE G41,#12 [TRUE] L0075
JG G41,G43 [FALSE] L0075
STORE G43,G41
L0075: JE G62,#02 [FALSE] L0076
JE G41,#11 [FALSE] L0076
JUMP L0077
L0076: INC L02
JUMP L0038
L0077: STORE G41,G42
JE G34,G12 [TRUE] L0080
JG G77,#00 [FALSE] L0078
STORE G76,G77
JUMP L0006
L0078: STORE G73,G76
CALL_1S R0055 -> G39
JE G39,"comma," [FALSE] L0079
CALL_1S R0055 -> G39
INC G76
L0079: CALL_2S R0059 (G76) -> G3a
STOREW L00,#00,#1009
STOREW L00,#01,#02
STOREW L00,#02,#01
STORE G48,G39
STOREW L00,#03,G34
STORE G3c,G76
SUB G74,G3c -> -(SP)
ADD (SP)+,#01 -> G3d
RTRUE
L0080: CALL_2S R0303 (G41) -> -(SP)
JZ (SP)+ [TRUE] L0081
JUMP L0004
L0081: STORE G64,G66
STORE G65,G67
JE G41,#01 [FALSE] L0082
CALL_VN R0236 (#1007,#1b)
STORE G78,#01
L0082: JE G41,#02 [FALSE] L0085
CALL_VN R0236 (#1007,#1c)
STORE L0a,#00
L0083: JL L0a,#20 [FALSE] L0084
LOADW #274e,L0a -> -(SP)
STOREW #270e,L0a,(SP)+
INC L0a
JUMP L0083
L0084: STORE G44,G45
CALL_2N R0035 (#00)
PRINT ".
"
L0085: JE G41,#03 [FALSE] L0086
CALL_VN R0236 (#1007,#1d)
L0086: JE G41,#04 [FALSE] L0087
CALL_VN R0236 (#1007,#1e)
STORE G78,G79
L0087: JE G41,#05 [FALSE] L0088
CALL_VN R0236 (#1007,#1f)
L0088: JE G41,#06 [FALSE] L0089
CALL_VN R0236 (#1007,#20)
STORE G78,G79
L0089: JE G41,#07 [FALSE] L0090
CALL_VN R0236 (#1007,#21)
L0090: JE G41,#08 [FALSE] L0091
CALL_VN R0236 (#1007,#22)
L0091: JE G41,#09 [FALSE] L0092
CALL_VN R0236 (#1007,#23)
L0092: JE G41,#0a [FALSE] L0093
CALL_VN R0236 (#1007,#24)
L0093: JE G41,#0b [FALSE] L0094
CALL_VN R0236 (#1007,#25)
L0094: JE G41,#0c [FALSE] L0095
CALL_VN R0236 (#1007,#26)
L0095: JE G41,#0d [FALSE] L0096
CALL_VN R0236 (#1007,#27)
L0096: JE G41,#0e [FALSE] L0098
JE G65,#ffff [FALSE] L0097
CALL_VN R0236 (#1007,#23)
JUMP L0098
L0097: CALL_VN R0236 (#1007,#28)
L0098: JE G41,#0f [FALSE] L0099
CALL_VN R0236 (#1007,#29)
L0099: JE G41,#10 [FALSE] L0100
CALL_VN R0236 (#1007,#2a,G58)
L0100: JE G41,#11 [FALSE] L0102
JE G57,#64 [FALSE] L0101
CALL_VN R0236 (#1007,#2b)
JUMP L0102
L0101: CALL_VN R0236 (#1007,#2c)
L0102: JE G41,#12 [FALSE] L0103
STORE G6b,#03
CALL_1S G6a -> -(SP)
JE (SP)+,#ffff [FALSE] L0103
STORE G42,G43
JUMP L0077
L0103: JUMP L0004
L0104: JG G73,G74 [TRUE] RTRUE
CALL_1S R0055 -> L05
JE L05,"then","then","then" [TRUE] L0105
JE L05,"comma," [FALSE] L0109
L0105: JG G73,G74 [FALSE] L0106
STORE G7a,#00
RTRUE
L0106: CALL_2S R0057 (G76) -> L05
CALL_2S R0057 (G73) -> L06
L0107: JL L05,L06 [FALSE] L0108
STOREB L05,#00,#20
INC L05
JUMP L0107
L0108: TOKENISE #29ce,#2a47
STORE G7a,#01
RTRUE
L0109: STORE G42,#02
JUMP L0077
Routine R0023, 2 locals
GET_PARENT L00 -> L01
L0001: GET_PARENT L01 -> -(SP)
JZ (SP)+ [TRUE] L0003
TEST_ATTR L01,#17 [TRUE] L0002
TEST_ATTR L01,#14 [TRUE] L0002
TEST_ATTR L01,#04 [FALSE] L0003
TEST_ATTR L01,#0e [FALSE] L0003
L0002: GET_PARENT L01 -> L01
JUMP L0001
L0003: JE L00,G12 [FALSE] L0004
JE G00,#13 [FALSE] L0004
RET #13
L0004: RET L01
Routine R0024, 0 locals
STORE G5a,#00
STORE G5b,#00
STORE G5c,#00
STORE G5d,#00
STORE G60,#00
STORE G5e,#00
STORE G5f,#0fff
RTRUE
Routine R0025, 7 locals
CALL_1N R0024
JG G73,G74 [FALSE] L0001
RFALSE
L0001: STORE L03,#01
L0002: JZ L03 [TRUE] L0018
CALL_1S R0056 -> L01
STORE L03,#00
STORE L02,#01
JUMP L0004
L0003: ADD L02,#04 -> L02
L0004: LOADW #2bf7,#00 -> -(SP)
JG L02,(SP)+ [TRUE] L0011
LOADW #2bf7,L02 -> -(SP)
JE L01,(SP)+ [FALSE] L0010
STORE L03,#01
ADD L02,#02 -> -(SP)
LOADW #2bf7,(SP)+ -> L05
JE L05,#0101 [TRUE] L0005
STORE G5a,#01
L0005: STORE G60,#01
ADD L02,#01 -> -(SP)
LOADW #2bf7,(SP)+ -> -(SP)
AND G5f,(SP)+ -> G5f
JE L05,#0100 [FALSE] L0008
ADD L02,#03 -> -(SP)
LOADW #2bf7,(SP)+ -> L04
STORE Gef,L04
JE Gef,#00 [FALSE] L0006
OR G5b,#02 -> G5b
JUMP L0008
L0006: JE Gef,#01 [FALSE] L0007
OR G5b,#04 -> G5b
JUMP L0008
L0007: CALL_2S R0068 (L04) -> G5e
JE G5e,#ffff [FALSE] L0008
STORE G5e,#15
L0008: JE L05,#09 [FALSE] L0009
OR G5b,#10 -> G5b
L0009: JE L05,#fff7 [FALSE] L0010
OR G5b,#20 -> G5b
L0010: JUMP L0003
L0011: JE L01,"another","other","other" [FALSE] L0012
STORE G5a,#01
STORE L03,#01
OR G5b,#01 -> G5b
L0012: JE L01,"all","each","every" [TRUE] L0013
JE L01,"everythin","both" [FALSE] L0015
L0013: STORE G5a,#01
STORE L03,#01
STORE G5c,#64
JE G62,#01 [FALSE] L0014
STORE G62,#02
L0014: OR G5b,#08 -> G5b
L0015: JZ G61 [TRUE] L0016
CALL_2S R0106 (L01) -> L06
JG L06,#01 [FALSE] L0016
STORE G5d,#01
STORE G5a,#01
STORE L03,#01
STORE G5c,L06
OR G5b,#08 -> G5b
L0016: JE L03,#01 [FALSE] L0017
CALL_1S R0056 -> -(SP)
PULL Gef
JE Gef,"of","of","of" [TRUE] L0017
JE Gef,"of" [TRUE] L0017
DEC G73
L0017: JUMP L0002
L0018: DEC G73
JG G5c,#00 [FALSE] L0019
JZ L00 [FALSE] L0019
RET #07
L0019: RFALSE
Routine R0026, 1 local
TEST_ATTR L00,#00 [TRUE] RTRUE
TEST_ATTR L00,#16 [FALSE] RFALSE
JE G4e,#53,#52,#51 [TRUE] RTRUE
JE G4e,#5a [TRUE] RTRUE
RFALSE
Routine R0027, 2 locals
LOADW #27ce,L01 -> -(SP)
JE (SP)+,L00 [FALSE] L0001
RET L00
L0001: LOADW #280e,L01 -> -(SP)
LOADB (SP)+,#00 -> -(SP)
AND (SP)+,#20 -> -(SP)
JZ (SP)+ [FALSE] L0002
RET #ffff
L0002: LOADW #27ce,L01 -> -(SP)
JE (SP)+,L00 [FALSE] L0003
RET L00
L0003: INC L01
LOADW #280e,L01 -> -(SP)
LOADB (SP)+,#00 -> -(SP)
AND (SP)+,#10 -> -(SP)
JZ (SP)+ [FALSE] L0002
RET #ffff
Routine R0028, 13 locals
LOADW #280e,L01 -> L02
CALL_2N R0018 (L02)
STORE G53,#00
STORE G33,#01
STORE Gef,G51
JE Gef,#01 [FALSE] L0020
STORE Gef,G52
JE Gef,#07 [FALSE] L0004
CALL_2S R0059 (G73) -> L03
CALL_1S R0055 -> G39
JE L03,#fc18 [FALSE] L0001
STORE L03,G39
L0001: STORE G3a,L03
JZ G47 [FALSE] L0002
STORE G48,L03
JUMP L0003
L0002: STORE G49,L03
L0003: INC G47
STORE L09,#01
JUMP L0077
L0004: JE Gef,#08 [FALSE] L0008
PUSH G73
INC G73
CALL_2S R0059 ((SP)+) -> L03
JE L03,#fc18 [FALSE] L0005
STORE G41,#03
RFALSE
L0005: PUSH G47
INC G47
JZ (SP)+ [FALSE] L0006
STORE G48,L03
JUMP L0007
L0006: STORE G49,L03
L0007: STORE L09,#01
JUMP L0077
L0008: JE Gef,#06 [FALSE] L0011
JE G4e,#52,#53,#5a [TRUE] L0009
JE G4e,#51 [FALSE] L0010
L0009: STORE G68,#01
L0010: JUMP L0019
L0011: JE Gef,#09 [FALSE] L0019
STORE G3c,G73
ADD L01,#01 -> -(SP)
LOADW #278e,(SP)+ -> -(SP)
JE (SP)+,#02 [TRUE] L0012
ADD L01,#01 -> -(SP)
LOADW #280e,(SP)+ -> -(SP)
JE (SP)+,#0f [TRUE] L0012
CALL_2N R0111 (#0d)
L0012: CALL_1S R0056 -> L04
JE L04,#ffff [TRUE] L0013
ADD L01,#01 -> -(SP)
CALL_VS R0027 (L04,(SP)+) -> -(SP)
JE (SP)+,#ffff [TRUE] L0012
L0013: DEC G73
SUB G73,G3c -> G3d
JZ G3d [FALSE] L0014
RTRUE
L0014: JE G4e,#53,#52,#51 [FALSE] L0018
STORE L04,G73
STORE G73,G3c
CALL_1S R0055 -> G3b
JE G3b,"the" [FALSE] L0015
JG G3d,#01 [FALSE] L0015
CALL_1S R0055 -> G3b
L0015: STORE G73,L04
PUSH G47
INC G47
JZ (SP)+ [FALSE] L0016
STORE G48,G3b
JUMP L0017
L0016: STORE G49,G3b
L0017: STORE L09,#01
JUMP L0077
L0018: RTRUE
L0019: JUMP L0039
L0020: JE Gef,#02 [FALSE] L0027
LOADB L02,#00 -> -(SP)
AND (SP)+,#10 -> -(SP)
JZ (SP)+ [TRUE] L0021
RTRUE
L0021: JG G73,G74 [FALSE] L0024
JZ G4b [FALSE] L0022
JL G46,G4a [FALSE] L0022
STORE G4b,G44
STORE G4c,L02
CALL_2S R0062 (G52) -> -(SP)
ADD #2710,(SP)+ -> -(SP)
STOREW #270e,G44,(SP)+
L0022: JZ G4b [FALSE] L0023
RFALSE
L0023: CALL_2S R0062 (G52) -> -(SP)
ADD #2710,(SP)+ -> -(SP)
STOREW #270e,G44,(SP)+
RTRUE
L0024: CALL_1S R0055 -> L04
CALL_2S R0062 (L04) -> -(SP)
ADD #2710,(SP)+ -> -(SP)
STOREW #270e,G44,(SP)+
JE L04,G52 [FALSE] L0025
RTRUE
L0025: CALL_VS R0027 (L04,L01) -> -(SP)
JE (SP)+,#ffff [TRUE] L0026
RTRUE
L0026: RFALSE
L0027: JE Gef,#06 [FALSE] L0034
CALL_1S G52 -> L03
JL L03,#ff38 [FALSE] L0028
ADD L03,#0100 -> G52
JUMP L0039
L0028: JL L03,#00 [TRUE] RFALSE
JZ L03 [FALSE] L0029
DEC G4a
RTRUE
L0029: JE L03,#01 [FALSE] L0032
JZ G47 [FALSE] L0030
STORE G48,G3b
JUMP L0031
L0030: STORE G49,G3b
L0031: INC G47
L0032: JE L03,#2710 [FALSE] L0033
RET L03
L0033: STORE L09,L03
JUMP L0077
L0034: JE Gef,#05 [FALSE] L0037
STORE G69,G52
STORE G6b,#01
CALL_1S G69 -> L03
JE L03,#01 [FALSE] L0035
STORE G52,#02
JUMP L0036
L0035: STORE G52,#00
L0036: JUMP L0039
L0037: JE Gef,#04 [FALSE] L0038
ADD #01,G52 -> G53
STORE G52,#00
JUMP L0039
L0038: JE Gef,#03 [FALSE] L0039
STORE G53,G52
STORE G52,#00
L0039: STORE L02,G52
STORE L0c,#00
JE L02,#02,#03,#04 [TRUE] L0040
JE L02,#05 [FALSE] L0041
L0040: STORE L0c,#01
L0041: STORE L0b,#00
STORE L08,#01
STORE G4d,#00
L0042: CALL_1S R0055 -> L04
DEC G73
STORE G64,#ffff
STORE G65,#ffff
CALL_2S R0068 (L04) -> L03
JZ L03 [TRUE] L0047
STORE G64,L04
STORE G65,L03
JE L03,#ffff [FALSE] L0047
STORE L03,#01
JUMP L0044
L0043: ADD L03,#04 -> L03
L0044: JG L03,#2bf7 [TRUE] L0046
LOADW #2bf7,L03 -> -(SP)
JE L04,(SP)+ [FALSE] L0045
JUMP L0047
L0045: JUMP L0043
L0046: STORE G66,G64
STORE G67,G65
STORE G41,#09
RFALSE
L0047: JE L04,"me","myself","self" [FALSE] L0048
STORE G64,L04
STORE G65,G12
L0048: STORE G61,#01
STORE L0a,G73
L0049: CALL_2S R0025 (L0c) -> L03
JZ L03 [TRUE] L0050
STORE G41,L03
RFALSE
L0050: STORE G78,G73
JE L02,#01 [TRUE] L0065
LOADW #266e,#00 -> L05
CALL_VS R0029 (G35,G34,L02) -> L03
JE L03,#2710 [FALSE] L0051
RET L03
L0051: JZ L03 [FALSE] L0053
JZ G60 [TRUE] L0052
CALL_1N R0024
STORE G73,L0a
JUMP L0050
L0052: CALL_1S R0036 -> G41
JUMP L0080
L0053: JE L03,#01 [FALSE] L0059
JZ L0b [FALSE] L0054
STORE L0b,#01
JUMP L0058
L0054: LOADW #266e,#00 -> L07
STOREW #266e,#00,L05
ADD L05,#01 -> L06
L0055: JG L06,L07 [TRUE] L0058
JZ L08 [TRUE] L0056
LOADW #266e,L06 -> -(SP)
CALL_2N R0037 ((SP)+)
JUMP L0057
L0056: LOADW #266e,L06 -> -(SP)
CALL_2N R0038 ((SP)+)
L0057: INC L06
JUMP L0055
L0058: JUMP L0064
L0059: JZ G71 [FALSE] L0060
JZ G60 [TRUE] L0060
CALL_1N R0024
STORE G73,L0a
JUMP L0050
L0060: JE L02,#06 [FALSE] L0061
CALL_2S R0026 (L03) -> -(SP)
JZ (SP)+ [FALSE] L0061
STORE G41,#0b
JUMP L0080
L0061: JZ L0b [FALSE] L0062
STORE L09,L03
JUMP L0064
L0062: JZ L08 [TRUE] L0063
CALL_2N R0037 (L03)
JUMP L0064
L0063: CALL_2N R0038 (L03)
L0064: JUMP L0071
L0065: CALL_VS R0029 (G34,G35,L02) -> L03
JE L03,#2710 [FALSE] L0066
RET L03
L0066: JZ L03 [FALSE] L0068
JZ G60 [TRUE] L0067
CALL_1N R0024
STORE G73,L0a
JUMP L0050
L0067: CALL_1S R0036 -> G41
RET L03
L0068: GET_PARENT L03 -> L04
JE L04,G34 [TRUE] L0070
JE G3e,#01 [FALSE] L0069
STORE G79,G78
STORE G41,#06
JUMP L0080
L0069: STORE G40,L03
L0070: STORE L09,L03
L0071: ADD G78,G71 -> G73
CALL_1S R0055 -> L04
JE L04,"and","and","and" [TRUE] L0072
JE L04,"but","except","but" [TRUE] L0072
JE L04,"comma," [FALSE] L0076
L0072: JZ L0c [FALSE] L0073
STORE G41,#07
JUMP L0080
L0073: JE L04,"but","except","but" [FALSE] L0074
SUB #01,L08 -> L08
L0074: JZ L0b [FALSE] L0075
STOREW #266e,#00,#01
STOREW #266e,#01,L09
STORE L0b,#01
L0075: STORE G4d,#01
STORE G4b,#00
JUMP L0042
L0076: DEC G73
L0077: JZ L0b [TRUE] L0078
STORE L09,#00
STORE G59,L02
JUMP L0079
L0078: JE G5a,#01 [FALSE] L0079
AND G5b,#08 -> -(SP)
JZ (SP)+ [TRUE] L0079
JL G5c,#64 [FALSE] L0079
JG G5c,#01 [FALSE] L0079
STORE G58,#01
STORE G57,G5c
STORE G41,#10
JUMP L0080
L0079: ADD G46,#02 -> -(SP)
STOREW L00,(SP)+,L09
INC G46
STOREW #270e,G44,L09
RTRUE
L0080: JZ G61 [TRUE] L0081
JE G5d,#01 [FALSE] L0081
STORE G61,#00
STORE G73,L0a
JUMP L0049
L0081: RFALSE
Routine R0029, 10 locals
STORE G71,#00
STORE G6f,#00
STORE G72,G73
STORE G6e,#00
CALL_VN R0042 (L00,L01,L02)
ADD G72,G71 -> G73
JZ G6f [FALSE] L0001
INC G73
RFALSE
L0001: JG G72,G74 [TRUE] L0003
JE G6f,#01 [FALSE] L0002
LOADW #284e,#00 -> L04
RET L04
L0002: JG G73,G74 [TRUE] L0003
CALL_1S R0055 -> L04
DEC G73
JE L04,"and","and","and" [TRUE] L0003
JE L04,"comma,","then","then" [TRUE] L0003
JE L04,"then","but","except" [TRUE] L0003
JE L04,"but" [TRUE] L0003
JE G55,#0f [TRUE] RFALSE
L0003: STORE G70,#00
JE G6f,#01 [FALSE] L0004
LOADW #284e,#00 -> L04
L0004: JG G6f,#01 [FALSE] L0005
CALL_2S R0030 (L02) -> L04
JE L04,#ffff [TRUE] RFALSE
JE L04,#01 [TRUE] RTRUE
L0005: JZ L04 [TRUE] L0008
JZ G4d [TRUE] L0006
RET L04
L0006: JZ G4b [FALSE] L0007
STORE G4b,G44
L0007: STOREW #270e,G44,L04
RET L04
L0008: JG G72,G74 [FALSE] L0009
JUMP L0033
L0009: JE L02,#06 [FALSE] L0010
CALL_VN R0236 (#1007,#2d)
JUMP L0011
L0010: CALL_VN R0236 (#1007,#2e)
L0011: STORE L05,G70
STORE L09,#00
STORE L04,#01
L0012: JG L04,G70 [TRUE] L0019
L0013: LOADW #28ce,L09 -> -(SP)
JE (SP)+,L04 [TRUE] L0014
SUB #00,L04 -> -(SP)
LOADW #28ce,L09 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0014
INC L09
JUMP L0013
L0014: LOADW #284e,L09 -> L06
LOADW #28ce,L09 -> -(SP)
JG (SP)+,#00 [FALSE] L0015
CALL_2N R0102 (L06)
JUMP L0016
L0015: CALL_2N R0101 (L06)
L0016: SUB L05,#01 -> -(SP)
JL L04,(SP)+ [FALSE] L0017
PRINT ", "
L0017: SUB L05,#01 -> -(SP)
JE L04,(SP)+ [FALSE] L0018
PRINT_PADDR S034
L0018: INC L04
JUMP L0012
L0019: PRINT "?
"
L0020: CALL_VS R0021 (#2a88,#2b01) -> L08
LOADW #2b01,#01 -> L03
JE L03,"all","each","every" [TRUE] L0021
JE L03,"everythin","both" [FALSE] L0026
L0021: JE L02,#02,#03,#04 [TRUE] L0022
JE L02,#05 [FALSE] L0025
L0022: LOADW #266e,#00 -> L07
STORE L04,#00
L0023: JL L04,G6f [FALSE] L0024
ADD L07,L04 -> -(SP)
JL (SP)+,#3f [FALSE] L0024
LOADW #284e,L04 -> L06
ADD L04,#01 -> -(SP)
ADD (SP)+,L07 -> -(SP)
STOREW #266e,(SP)+,L06
INC L04
JUMP L0023
L0024: ADD L04,L07 -> -(SP)
STOREW #266e,#00,(SP)+
RTRUE
L0025: CALL_VN R0236 (#1007,#2f)
JUMP L0020
L0026: JZ L03 [TRUE] L0027
LOADB L03,#06 -> L05
AND L05,#01 -> -(SP)
JE #00,(SP)+ [TRUE] L0027
CALL_VN R0064 (#29ce,#2a88)
RET #2710
L0027: CALL_2S R0057 (G72) -> -(SP)
SUB (SP)+,#29ce -> L06
LOADB #2a88,#01 -> -(SP)
ADD (SP)+,#01 -> L07
LOADB #29ce,#00 -> -(SP)
ADD #29ce,(SP)+ -> -(SP)
SUB (SP)+,#01 -> L05
L0028: ADD #29ce,L06 -> -(SP)
ADD (SP)+,L07 -> -(SP)
JL L05,(SP)+ [TRUE] L0029
SUB L05,L07 -> -(SP)
LOADB #00,(SP)+ -> -(SP)
STOREB L05,#00,(SP)+
DEC L05
JUMP L0028
L0029: STORE L04,#00
L0030: JL L04,L07 [FALSE] L0031
ADD #02,L04 -> -(SP)
LOADB #2a88,(SP)+ -> -(SP)
ADD L06,L04 -> -(SP)
STOREB #29ce,(SP)+,(SP)+
INC L04
JUMP L0030
L0031: ADD L06,L07 -> -(SP)
SUB (SP)+,#01 -> -(SP)
STOREB #29ce,(SP)+,#20
LOADB #29ce,#01 -> -(SP)
ADD (SP)+,L07 -> -(SP)
STOREB #29ce,#01,(SP)+
LOADB #29ce,#00 -> -(SP)
SUB (SP)+,#01 -> -(SP)
LOADB #29ce,#01 -> -(SP)
JL (SP)+,(SP)+ [TRUE] L0032
LOADB #29ce,#00 -> -(SP)
STOREB #29ce,#01,(SP)+
L0032: RET #2710
L0033: JE L02,#06 [FALSE] L0034
CALL_VN R0236 (#1007,#30)
JUMP L0035
L0034: CALL_VN R0236 (#1007,#31)
L0035: CALL_VS R0021 (#2a88,#2b01) -> L08
LOADW #2b01,#01 -> L03
JZ L03 [TRUE] L0036
LOADB L03,#06 -> L05
AND L05,#01 -> -(SP)
JE #00,(SP)+ [TRUE] L0036
CALL_VN R0064 (#29ce,#2a88)
RET #2710
L0036: JZ G4b [TRUE] L0047
STORE L05,G4b
L0037: JL L05,G44 [FALSE] L0047
LOADB #29ce,#01 -> -(SP)
ADD #02,(SP)+ -> L04
STORE Gef,#29ce
STORE Gee,#01
LOADB Gef,Gee -> Ged
INC Ged
STOREB Gef,Gee,Ged
PUSH L04
INC L04
STOREB #29ce,(SP)+,#20
STOREW #2b01,#01,#00
LOADW #270e,L05 -> -(SP)
JL (SP)+,#02 [TRUE] L0042
LOADW #270e,L05 -> -(SP)
JL (SP)+,#2710 [FALSE] L0042
LOADW #270e,L05 -> -(SP)
CALL_2N R0071 ((SP)+)
STORE L06,#01
JUMP L0039
L0038: ADD L06,#03 -> L06
L0039: LOADW #2bdd,#00 -> -(SP)
JG L06,(SP)+ [TRUE] L0041
ADD L06,#02 -> -(SP)
LOADW #2bdd,(SP)+ -> -(SP)
LOADW #270e,L05 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0040
LOADW #2bdd,L06 -> -(SP)
STOREW #2b01,#01,(SP)+
JUMP L0041
L0040: JUMP L0038
L0041: JUMP L0043
L0042: LOADW #270e,L05 -> -(SP)
SUB (SP)+,#2710 -> -(SP)
CALL_2S R0063 ((SP)+) -> -(SP)
STOREW #2b01,#01,(SP)+
L0043: LOADW #2b01,#01 -> -(SP)
JZ (SP)+ [TRUE] L0046
ADD #29ce,L04 -> L06
OUTPUT_STREAM REDIRECT_ENABLE,L06
LOADW #2b01,#01 -> -(SP)
PRINT_ADDR (SP)+
OUTPUT_STREAM #fffd
LOADW L06,#00 -> L06
STORE L07,L04
L0044: ADD L04,L06 -> -(SP)
JL L07,(SP)+ [FALSE] L0045
ADD L07,#02 -> -(SP)
LOADB #29ce,(SP)+ -> -(SP)
STOREB #29ce,L07,(SP)+
INC L07
JUMP L0044
L0045: ADD L04,L06 -> L04
SUB L04,#02 -> -(SP)
STOREB #29ce,#01,(SP)+
L0046: INC L05
JUMP L0037
L0047: LOADB #29ce,#01 -> -(SP)
ADD #02,(SP)+ -> L04
STORE Gef,#29ce
STORE Gee,#01
LOADB Gef,Gee -> Ged
INC Ged
STOREB Gef,Gee,Ged
PUSH L04
INC L04
STOREB #29ce,(SP)+,#20
STORE L05,#00
JUMP L0049
L0048: INC L04
INC L05
L0049: LOADB #2a88,#01 -> -(SP)
JL L05,(SP)+ [FALSE] L0051
ADD L05,#02 -> -(SP)
LOADB #2a88,(SP)+ -> -(SP)
STOREB #29ce,L04,(SP)+
STORE Gef,#29ce
STORE Gee,#01
LOADB Gef,Gee -> Ged
INC Ged
STOREB Gef,Gee,Ged
LOADB #29ce,#00 -> -(SP)
LOADB #29ce,#01 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0050
JUMP L0051
L0050: JUMP L0048
L0051: RET #2710
Routine R0030, 10 locals
SUB G6f,#01 -> L02
STORE L04,#00
LOADW #284e,#00 -> L05
STORE L01,#00
L0001: JG L01,L02 [TRUE] L0014
LOADW #284e,L01 -> L06
STOREW #294e,L01,L04
STORE L07,L06
L0002: GET_PARENT L07 -> L07
JE L07,G35,G34,#00 [FALSE] L0002
JZ L00 [FALSE] L0004
JE L07,G35 [FALSE] L0004
JZ G53 [TRUE] L0003
CALL_2S R0040 (L06) -> -(SP)
JE (SP)+,#01 [FALSE] L0004
L0003: INC L04
STORE L05,L06
L0004: JE L00,#01 [FALSE] L0005
GET_PARENT L06 -> -(SP)
JE (SP)+,G34 [FALSE] L0005
INC L04
STORE L05,L06
L0005: JE L00,#02 [FALSE] L0006
JE L07,G35 [FALSE] L0006
INC L04
STORE L05,L06
L0006: JE L00,#03 [FALSE] L0007
GET_PARENT L06 -> -(SP)
JE (SP)+,G34 [FALSE] L0007
INC L04
STORE L05,L06
L0007: JE L00,#04,#05 [FALSE] L0012
JE G50,#ffff [FALSE] L0010
JE L00,#04 [FALSE] L0008
INC L04
STORE L05,L06
L0008: JE L00,#05 [FALSE] L0009
GET_PARENT L06 -> -(SP)
JE (SP)+,G34 [TRUE] L0009
INC L04
STORE L05,L06
L0009: JUMP L0012
L0010: JE L00,#04 [FALSE] L0011
JE L06,G50 [TRUE] L0011
INC L04
STORE L05,L06
L0011: JE L00,#05 [FALSE] L0012
JIN L06,G50 [FALSE] L0012
INC L04
STORE L05,L06
L0012: JE L00,#06 [FALSE] L0013
CALL_2S R0026 (L06) -> -(SP)
JE (SP)+,#01 [FALSE] L0013
INC L04
STORE L05,L06
L0013: LOADW #294e,L01 -> -(SP)
SUB L04,(SP)+ -> -(SP)
MUL #03e8,(SP)+ -> -(SP)
STOREW #294e,L01,(SP)+
INC L01
JUMP L0001
L0014: JE L04,#01 [FALSE] L0015
RET L05
L0015: JE L00,#06 [FALSE] L0016
JZ L04 [FALSE] L0016
LOADW #284e,#00 -> -(SP)
RET_POPPED
L0016: JZ G5a [FALSE] L0017
STORE G5b,#00
L0017: CALL_1N R0032
JZ G6f [FALSE] L0018
RET #ffff
L0018: JE G5a,#01 [FALSE] L0030
AND G5b,#08 -> -(SP)
JZ (SP)+ [TRUE] L0030
JE L00,#02,#03,#04 [TRUE] L0019
JE L00,#05 [TRUE] L0019
STORE G41,#07
RET #ffff
L0019: STORE L01,#00
LOADW #266e,#00 -> L09
CALL_1S R0033 -> L02
JUMP L0021
L0020: CALL_1S R0033 -> L02
L0021: JE L02,#ffff [TRUE] L0028
JL L01,G5c [FALSE] L0028
ADD L01,L09 -> -(SP)
JL (SP)+,#3f [FALSE] L0028
STORE L08,#00
TEST_ATTR L02,#03 [TRUE] L0022
TEST_ATTR L02,#1a [TRUE] L0022
STORE L08,#01
L0022: JE L00,#03,#04 [FALSE] L0023
GET_PARENT L02 -> -(SP)
JE (SP)+,G34 [TRUE] L0023
STORE L08,#00
L0023: CALL_VS R0305 (L02,L08) -> L03
JE L03,#01 [FALSE] L0024
STORE L08,#01
JUMP L0025
L0024: JE L03,#02 [FALSE] L0025
STORE L08,#00
L0025: JE L08,#01 [FALSE] L0026
INC L01
ADD L01,L09 -> -(SP)
STOREW #266e,(SP)+,L02
JUMP L0027
L0026: STORE L01,L01
L0027: JUMP L0020
L0028: JL L01,G5c [FALSE] L0029
JL G5c,#64 [FALSE] L0029
STORE G41,#10
STORE G57,G5c
LOADW #266e,#00 -> G58
RET #ffff
L0029: ADD L01,L09 -> -(SP)
STOREW #266e,#00,(SP)+
STORE G59,L00
RTRUE
L0030: STORE L01,#00
L0031: JL L01,G6f [FALSE] L0032
STOREW #28ce,L01,#00
INC L01
JUMP L0031
L0032: STORE L06,#01
STORE L01,#00
L0033: JL L01,G6f [FALSE] L0038
LOADW #28ce,L01 -> -(SP)
JZ (SP)+ [FALSE] L0037
PUSH L06
INC L06
STOREW #28ce,L01,(SP)+
STORE L08,#00
ADD L01,#01 -> L02
L0034: JL L02,G6f [FALSE] L0036
LOADW #28ce,L02 -> -(SP)
JZ (SP)+ [FALSE] L0035
LOADW #284e,L02 -> -(SP)
LOADW #284e,L01 -> -(SP)
CALL_VS R0034 ((SP)+,(SP)+) -> -(SP)
JE (SP)+,#01 [FALSE] L0035
STORE L08,#01
LOADW #28ce,L01 -> -(SP)
STOREW #28ce,L02,(SP)+
L0035: INC L02
JUMP L0034
L0036: JE L08,#01 [FALSE] L0037
SUB #01,L06 -> -(SP)
STOREW #28ce,L01,(SP)+
L0037: INC L01
JUMP L0033
L0038: DEC L06
STORE G70,L06
JG L06,#01 [FALSE] L0044
JZ G5a [FALSE] L0044
STORE L02,#00
STORE L04,#00
STORE L01,#00
L0039: JL L01,G6f [FALSE] L0042
LOADW #284e,L01 -> -(SP)
CALL_VS R0305 ((SP)+,#02) -> L03
JE L03,L02 [FALSE] L0040
INC L04
L0040: JG L03,L02 [FALSE] L0041
STORE L02,L03
STORE L04,#01
LOADW #284e,L01 -> L05
L0041: INC L01
JUMP L0039
L0042: JE L04,#01 [FALSE] L0043
RET L05
L0043: RFALSE
L0044: JE L06,#01 [FALSE] L0045
STORE G4d,#01
L0045: CALL_1S R0033 -> -(SP)
RET_POPPED
Routine R0031, 3 locals
JE G59,#04,#05 [FALSE] L0006
STORE L01,#01
STORE L02,#00
L0001: LOADW #266e,#00 -> -(SP)
JG L01,(SP)+ [TRUE] L0005
JE G59,#04 [FALSE] L0002
LOADW #266e,L01 -> -(SP)
JE (SP)+,L00 [FALSE] L0003
L0002: JE G59,#05 [FALSE] L0004
LOADW #266e,L01 -> -(SP)
JIN (SP)+,L00 [FALSE] L0004
L0003: INC L02
LOADW #266e,L01 -> -(SP)
STOREW #266e,L02,(SP)+
L0004: INC L01
JUMP L0001
L0005: STOREW #266e,#00,L02
L0006: JE G59,#02 [FALSE] L0014
JE G4e,#0f [FALSE] L0014
STORE L01,#01
STORE L02,#00
L0007: LOADW #266e,#00 -> -(SP)
JG L01,(SP)+ [TRUE] L0009
GET_PARENT G34 -> -(SP)
LOADW #266e,L01 -> -(SP)
GET_PARENT (SP)+ -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0008
INC L02
L0008: INC L01
JUMP L0007
L0009: JE G62,#02 [TRUE] L0010
JG L02,#00 [FALSE] L0014
L0010: STORE L01,#01
STORE L02,#00
L0011: LOADW #266e,#00 -> -(SP)
JG L01,(SP)+ [TRUE] L0013
GET_PARENT G34 -> -(SP)
LOADW #266e,L01 -> -(SP)
GET_PARENT (SP)+ -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0012
INC L02
LOADW #266e,L01 -> -(SP)
STOREW #266e,L02,(SP)+
L0012: INC L01
JUMP L0011
L0013: STOREW #266e,#00,L02
L0014: LOADW #266e,#00 -> L01
JZ L01 [FALSE] L0015
RET #11
L0015: RFALSE
Routine R0032, 8 locals
AND G5b,#02 -> -(SP)
JZ (SP)+ [TRUE] L0001
ADD L05,#2d -> L05
L0001: AND G5b,#04 -> -(SP)
JZ (SP)+ [TRUE] L0002
ADD L05,#2d -> L05
L0002: AND G5b,#10 -> -(SP)
JZ (SP)+ [TRUE] L0003
ADD L05,#2d -> L05
L0003: AND G5b,#20 -> -(SP)
JZ (SP)+ [TRUE] L0004
ADD L05,#2d -> L05
L0004: JZ G5e [TRUE] L0005
ADD L05,#2d -> L05
L0005: STORE L06,#1e
STORE L07,#14
JE G4e,#0f,#11 [FALSE] L0006
STORE L06,#14
STORE L07,#1e
L0006: STORE L03,#00
L0007: JL L03,G6f [FALSE] L0020
LOADW #284e,L03 -> L02
GET_PARENT L02 -> L00
STORE L01,#00
AND G5b,#02 -> -(SP)
JZ (SP)+ [TRUE] L0008
JE L00,G34 [FALSE] L0008
ADD L01,#2d -> L01
L0008: AND G5b,#04 -> -(SP)
JZ (SP)+ [TRUE] L0009
JE L00,G35 [FALSE] L0009
ADD L01,#2d -> L01
L0009: AND G5b,#10 -> -(SP)
JZ (SP)+ [TRUE] L0010
TEST_ATTR L02,#09 [FALSE] L0010
ADD L01,#2d -> L01
L0010: AND G5b,#20 -> -(SP)
JZ (SP)+ [TRUE] L0011
TEST_ATTR L02,#09 [TRUE] L0011
ADD L01,#2d -> L01
L0011: JZ G5e [TRUE] L0012
JE L00,G5e [FALSE] L0012
ADD L01,#2d -> L01
L0012: JL L01,L05 [FALSE] L0013
STOREW #284e,L03,#ffff
JUMP L0019
L0013: STORE L01,#00
TEST_ATTR L02,#03 [TRUE] L0014
STORE L01,#32
L0014: JE L00,G34 [FALSE] L0015
ADD L01,L06 -> L01
JUMP L0017
L0015: JE L00,G35 [FALSE] L0016
ADD L01,L07 -> L01
JUMP L0017
L0016: JZ L01 [FALSE] L0017
JE L00,#06 [TRUE] L0017
ADD L01,#0a -> L01
L0017: CALL_VS R0305 (L02,#02) -> -(SP)
ADD L01,(SP)+ -> L01
MUL #02,L01 -> L01
CALL_2S R0061 (L02) -> -(SP)
LOADW #2bc5,(SP)+ -> -(SP)
AND G5f,(SP)+ -> -(SP)
JZ (SP)+ [TRUE] L0018
INC L01
L0018: LOADW #294e,L03 -> -(SP)
ADD (SP)+,L01 -> -(SP)
STOREW #294e,L03,(SP)+
L0019: INC L03
JUMP L0007
L0020: STORE L03,#00
L0021: JL L03,G6f [FALSE] L0027
L0022: LOADW #284e,L03 -> -(SP)
JE (SP)+,#ffff [FALSE] L0026
SUB G6f,#01 -> -(SP)
JE L03,(SP)+ [FALSE] L0023
DEC G6f
JUMP L0026
L0023: STORE L04,L03
L0024: JL L04,G6f [FALSE] L0025
ADD L04,#01 -> -(SP)
LOADW #284e,(SP)+ -> -(SP)
STOREW #284e,L04,(SP)+
INC L04
JUMP L0024
L0025: DEC G6f
JUMP L0022
L0026: INC L03
JUMP L0021
L0027: RTRUE
Routine R0033, 4 locals
STORE L00,#00
STORE L02,#ffff
STORE L03,#00
L0001: JL L03,G6f [FALSE] L0003
LOADW #284e,L03 -> -(SP)
JL (SP)+,#00 [TRUE] L0002
LOADW #294e,L03 -> L01
JG L01,L02 [FALSE] L0002
STORE L02,L01
STORE L00,L03
L0002: INC L03
JUMP L0001
L0003: JL L02,#00 [FALSE] L0004
RET #ffff
L0004: LOADW #284e,L00 -> L03
STOREW #284e,L00,#ffff
RET L03
Routine R0034, 9 locals
JE L00,L01 [TRUE] RTRUE
JZ L00 [TRUE] RFALSE
JZ L01 [TRUE] RFALSE
GET_PARENT L00 -> -(SP)
JE (SP)+,#06 [TRUE] RFALSE
GET_PARENT L01 -> -(SP)
JE (SP)+,#06 [TRUE] RFALSE
GET_PROP L00,#30 -> -(SP)
JZ (SP)+ [FALSE] L0001
GET_PROP L01,#30 -> -(SP)
JZ (SP)+ [TRUE] L0002
L0001: GET_PROP L01,#30 -> -(SP)
GET_PROP L00,#30 -> -(SP)
JE (SP)+,(SP)+ [FALSE] RFALSE
STORE G30,#1004
STORE G31,L00
STORE G32,L01
STORE L07,G73
CALL_VS R0084 (L00,#30) -> L06
STORE G73,L07
JE L06,#ffff [TRUE] RTRUE
JE L06,#fffe [TRUE] RFALSE
L0002: GET_PROP_ADDR L00,#01 -> L02
GET_PROP_ADDR L00,#01 -> Gef
JZ Gef [TRUE] L0003
GET_PROP_LEN Gef -> Gef
L0003: PUSH Gef
DIV (SP)+,#02 -> L04
GET_PROP_ADDR L01,#01 -> L03
GET_PROP_ADDR L01,#01 -> Gef
JZ Gef [TRUE] L0004
GET_PROP_LEN Gef -> Gef
L0004: PUSH Gef
DIV (SP)+,#02 -> L05
STORE L06,#00
L0005: JL L06,L04 [FALSE] L0009
STORE L08,#00
STORE L07,#00
L0006: JL L07,L05 [FALSE] L0008
LOADW L03,L07 -> -(SP)
LOADW L02,L06 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0007
STORE L08,#01
L0007: INC L07
JUMP L0006
L0008: JZ L08 [TRUE] RFALSE
INC L06
JUMP L0005
L0009: STORE L07,#00
L0010: JL L07,L05 [FALSE] L0014
STORE L08,#00
STORE L06,#00
L0011: JL L06,L04 [FALSE] L0013
LOADW L03,L07 -> -(SP)
LOADW L02,L06 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0012
STORE L08,#01
L0012: INC L06
JUMP L0011
L0013: JZ L08 [TRUE] RFALSE
INC L07
JUMP L0010
L0014: RTRUE
Routine R0035, 4 locals
JZ L00 [FALSE] L0002
STORE L01,G75
CALL_2S R0008 (L01) -> -(SP)
JZ (SP)+ [FALSE] L0001
CALL_2S R0286 (L01) -> -(SP)
JZ (SP)+ [FALSE] L0001
PRINT_ADDR L01
L0001: INC L00
STORE L03,#01
L0002: STORE L02,L00
L0003: JL L02,G44 [FALSE] L0011
LOADW #270e,L02 -> L01
JE L01,#ffff [FALSE] L0004
JUMP L0010
L0004: JZ L03 [TRUE] L0005
PRINT_CHAR ' '
L0005: JZ L01 [FALSE] L0006
PRINT_PADDR S032
JUMP L0009
L0006: JE L01,#01 [FALSE] L0007
PRINT_PADDR S033
JUMP L0009
L0007: JL L01,#2710 [TRUE] L0008
SUB L01,#2710 -> -(SP)
CALL_2S R0063 ((SP)+) -> -(SP)
PRINT_ADDR (SP)+
JUMP L0009
L0008: CALL_2N R0102 (L01)
L0009: STORE L03,#01
L0010: INC L02
JUMP L0003
L0011: RTRUE
Routine R0036, 3 locals
STORE G79,G78
JZ G69 [TRUE] L0001
STORE G6a,G69
RET #12
L0001: DEC G73
CALL_1S R0055 -> L01
STORE L02,#04
JE L01,G64 [FALSE] L0002
STORE G66,G64
STORE G67,G65
STORE L02,#0e
L0002: STORE L00,G34
L0003: GET_PARENT L00 -> -(SP)
JZ (SP)+ [TRUE] L0004
GET_PARENT L00 -> L00
JUMP L0003
L0004: TEST_ATTR L00,#18 [FALSE] L0005
SUB G73,#01 -> -(SP)
CALL_VS R0051 (L00,(SP)+) -> -(SP)
JE (SP)+,#01 [FALSE] L0005
STORE L02,#0d
L0005: JG G41,L02 [FALSE] L0006
RET G41
L0006: RET L02
Routine R0037, 3 locals
LOADW #266e,#00 -> L01
JE L01,#3f [FALSE] L0001
STORE G38,#01
RTRUE
L0001: STORE L02,#01
L0002: JG L02,L01 [TRUE] L0003
LOADW #266e,L02 -> -(SP)
JE L00,(SP)+ [TRUE] RTRUE
INC L02
JUMP L0002
L0003: INC L01
STOREW #266e,L01,L00
STOREW #266e,#00,L01
RTRUE
Routine R0038, 5 locals
LOADW #266e,#00 -> L01
STORE L04,#00
STORE L02,#01
L0001: JG L02,L01 [TRUE] L0005
LOADW #266e,L02 -> -(SP)
JE L00,(SP)+ [FALSE] L0004
STORE L03,L02
L0002: JG L03,L01 [TRUE] L0003
ADD L03,#01 -> -(SP)
LOADW #266e,(SP)+ -> -(SP)
STOREW #266e,L03,(SP)+
INC L03
JUMP L0002
L0003: DEC L01
PUSH L01
STOREW #266e,#00,(SP)+
RET L04
L0004: INC L02
JUMP L0001
L0005: STORE L04,#09
RET L04
Routine R0039, 4 locals
L0001: LOADW #266e,#00 -> L01
STORE L02,#01
L0002: JG L02,L01 [TRUE] L0004
LOADW #266e,L02 -> L03
TEST_ATTR L03,L00 [TRUE] L0003
CALL_2N R0038 (L03)
JUMP L0001
L0003: INC L02
JUMP L0002
L0004: RTRUE
Routine R0040, 1 local
JL G53,#31 [FALSE] L0001
SUB G53,#01 -> -(SP)
TEST_ATTR L00,(SP)+ [TRUE] RTRUE
RFALSE
L0001: STORE G2a,L00
CALL_1S G53 -> -(SP)
RET_POPPED
Routine R0041, 5 locals
MUL L00,#02 -> -(SP)
SUB (SP)+,#01 -> L03
MUL L02,#02 -> -(SP)
SUB (SP)+,#01 -> L04
PUSH L04
INC L04
LOADW L01,(SP)+ -> -(SP)
PUSH L03
INC L03
STOREW #2a47,(SP)+,(SP)+
LOADW L01,L04 -> -(SP)
STOREW #2a47,L03,(SP)+
RTRUE
Routine R0042, 4 locals
STORE L03,#00
JZ G69 [TRUE] L0001
STORE G6b,#02
CALL_1S G69 -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0001: JE G34,L00,L01 [FALSE] L0002
CALL_2S R0301 (G34) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0002: JE L02,#05 [FALSE] L0004
JE G50,#ffff [TRUE] L0004
CALL_2S R0043 (G50) -> -(SP)
JE (SP)+,#01 [FALSE] L0003
CALL_VN R0046 (G50,#00,L02)
L0003: JUMP L0009
L0004: TEST_ATTR L00,#14 [TRUE] L0005
TEST_ATTR L00,#04 [FALSE] L0006
L0005: CALL_VN R0047 (L00,L00,L02)
L0006: CALL_VN R0046 (L00,L01,L02)
TEST_ATTR L01,#14 [TRUE] L0007
TEST_ATTR L01,#04 [FALSE] L0008
L0007: CALL_VN R0047 (L01,L01,L02)
L0008: CALL_VN R0046 (L01,#00,L02)
L0009: JE #13,L00,L01 [FALSE] L0011
CALL_VN R0047 (G34,G34,L02)
GET_PARENT G34 -> -(SP)
PULL Gef
TEST_ATTR Gef,#14 [TRUE] L0010
TEST_ATTR Gef,#04 [FALSE] L0011
L0010: GET_PARENT G34 -> -(SP)
GET_PARENT G34 -> -(SP)
CALL_VN R0047 ((SP)+,(SP)+,L02)
L0011: RTRUE
Routine R0043, 1 local
TEST_ATTR L00,#14 [TRUE] RTRUE
TEST_ATTR L00,#17 [TRUE] RTRUE
TEST_ATTR L00,#04 [FALSE] L0001
TEST_ATTR L00,#0e [TRUE] RTRUE
L0001: RFALSE
Routine R0044, 1 local
JE G68,#00,#01 [TRUE] L0001
CALL_2N R0045 (L00)
RTRUE
L0001: STORE G73,G72
CALL_2N R0050 (L00)
STORE G6e,#01
RTRUE
Routine R0045, 3 locals
STORE L01,G68
STORE L02,G31
STORE Gef,G68
JE Gef,#03 [FALSE] L0003
GET_PROP L00,#1a -> -(SP)
JE (SP)+,#00,#ffff [FALSE] L0001
RTRUE
L0001: JZ G31 [FALSE] L0002
CALL_VS R0084 (L00,#1a) -> G31
L0002: JUMP L0011
L0003: JE Gef,#04 [FALSE] L0006
GET_PROP L00,#1b -> -(SP)
JE (SP)+,#00,#ffff [FALSE] L0004
RTRUE
L0004: JZ G31 [FALSE] L0005
CALL_VS R0084 (L00,#1b) -> G31
L0005: JUMP L0011
L0006: JE Gef,#02 [FALSE] L0008
GET_PROP_ADDR L00,#2c -> -(SP)
JZ (SP)+ [FALSE] L0007
RTRUE
L0007: CALL_VN R0082 (L00,#2c)
JUMP L0011
L0008: JE Gef,#06 [FALSE] L0010
JE L00,G31 [FALSE] L0009
STORE G32,#01
L0009: JUMP L0011
L0010: JE Gef,#05 [FALSE] L0011
CALL_2N G31 (L00)
STORE G31,L02
L0011: STORE G68,L01
RTRUE
Routine R0046, 3 locals
JZ L00 [TRUE] RTRUE
JZ G5a [FALSE] L0001
JE L00,G35 [FALSE] L0001
JZ G68 [FALSE] L0001
JE L02,#06 [TRUE] L0001
CALL_2N R0046 (#06)
L0001: GET_CHILD L00 -> -(SP) [FALSE] L0002
L0002: PULL L00
JZ L00 [TRUE] L0004
L0003: CALL_VN R0047 (L00,L01,L02)
GET_SIBLING L00 -> L00 [TRUE] L0003
L0004: RTRUE
Routine R0047, 6 locals
JE L02,#04 [FALSE] L0001
JE L00,G50 [FALSE] L0001
JUMP L0006
L0001: JE G68,#00,#01 [TRUE] L0002
CALL_2N R0045 (L00)
JUMP L0006
L0002: JG G72,G74 [FALSE] L0003
STORE L03,G2f
STORE G2f,#00
CALL_VN R0049 (L00,#00)
STORE G2f,L03
JUMP L0006
L0003: STORE G73,G72
CALL_1S R0054 -> L03
JE L03,#01 [FALSE] L0004
JE G12,L00 [FALSE] L0004
CALL_VN R0049 (L00,#01)
L0004: JL L03,#02 [TRUE] L0005
JL L03,#80 [FALSE] L0005
LOADW #2bdd,L03 -> -(SP)
JE (SP)+,L00 [FALSE] L0005
CALL_VN R0049 (L00,#01)
L0005: DEC G73
CALL_2N R0050 (L00)
L0006: GET_CHILD L00 -> -(SP) [FALSE] L0007
L0007: JZ (SP)+ [TRUE] L0008
JE L00,L01 [TRUE] L0008
CALL_2S R0043 (L00) -> -(SP)
JE (SP)+,#01 [FALSE] L0008
CALL_VN R0046 (L00,L01,L02)
L0008: GET_PROP_ADDR L00,#18 -> L04
JZ L04 [TRUE] L0012
LOADW L04,#00 -> -(SP)
CALL_VS R0108 ((SP)+,G03) -> -(SP)
JG (SP)+,#00 [FALSE] L0009
ADD #02,L02 -> G6c
CALL_VN R0084 (L00,#18)
STORE G6c,#00
JUMP L0012
L0009: GET_PROP_ADDR L00,#18 -> Gef
JZ Gef [TRUE] L0010
GET_PROP_LEN Gef -> Gef
L0010: STORE L05,Gef
STORE L03,#00
L0011: MUL #02,L03 -> -(SP)
JL (SP)+,L05 [FALSE] L0012
LOADW L04,L03 -> -(SP)
CALL_VN R0047 ((SP)+,#00,L02)
INC L03
JUMP L0011
L0012: RTRUE
Routine R0048, 1 local
JL G6c,#02 [TRUE] L0001
SUB G6c,#02 -> -(SP)
CALL_VN R0047 (L00,#00,(SP)+)
L0001: JE G6c,#01 [FALSE] L0002
CALL_2S R0095 (L00) -> -(SP)
JE (SP)+,#01 [FALSE] L0002
STORE G6d,#01
L0002: RTRUE
Routine R0049, 3 locals
JZ G53 [TRUE] L0001
CALL_2S R0040 (L00) -> -(SP)
JZ (SP)+ [FALSE] L0001
RTRUE
L0001: JL L01,G71 [TRUE] RTRUE
JG L01,G71 [FALSE] L0002
STORE G71,L01
STORE G6f,#00
JUMP L0004
L0002: MUL #02,G6f -> -(SP)
JL (SP)+,#80 [FALSE] RTRUE
STORE L02,#00
L0003: JL L02,G6f [FALSE] L0004
LOADW #284e,L02 -> -(SP)
JE (SP)+,L00 [TRUE] RTRUE
INC L02
JUMP L0003
L0004: PUSH G6f
INC G6f
STOREW #284e,(SP)+,L00
RTRUE
Routine R0050, 5 locals
STORE G63,#00
JZ G5a [TRUE] L0001
JG G73,G74 [FALSE] L0001
STORE G63,#70
CALL_VN R0049 (L00,#00)
RFALSE
L0001: GET_PROP L00,#30 -> -(SP)
JZ (SP)+ [TRUE] L0008
STORE G30,#ffff
STORE L04,G73
CALL_VS R0084 (L00,#30) -> L02
JG L02,#00 [FALSE] L0007
ADD L04,L02 -> G73
L0002: JE G30,#1005 [FALSE] L0003
OR G63,#04 -> G63
L0003: AND G63,#04 -> -(SP)
JZ (SP)+ [TRUE] L0006
JZ G61 [FALSE] L0004
STORE L02,#00
JUMP L0006
L0004: JZ G5a [FALSE] L0005
STORE G5a,#01
STORE G5b,#00
STORE G5c,#00
L0005: OR G5b,#08 -> G5b
JZ G5c [FALSE] L0006
STORE G5c,#64
L0006: CALL_VN R0049 (L00,L02)
RFALSE
L0007: JZ L02 [FALSE] L0008
JUMP L0013
L0008: STORE G30,#ffff
CALL_1S R0054 -> L03
JE L03,#01 [FALSE] L0009
JE G12,L00 [FALSE] L0009
STORE L02,#01
JUMP L0002
L0009: JL L03,#02 [TRUE] L0010
JL L03,#80 [FALSE] L0010
LOADW #2bdd,L03 -> -(SP)
JE (SP)+,L00 [FALSE] L0010
STORE L02,#01
JUMP L0002
L0010: DEC G73
STORE L04,G73
CALL_2S R0307 (L00) -> L01
JL L01,#00 [FALSE] L0011
INC G73
L0011: JG L01,#00 [FALSE] L0012
STORE L02,L01
JUMP L0002
L0012: JZ L01 [TRUE] L0013
SUB G73,#01 -> -(SP)
CALL_VS R0051 (L00,(SP)+) -> -(SP)
JZ (SP)+ [FALSE] L0015
L0013: JZ G5a [TRUE] L0014
STORE L02,#00
STORE G30,#ffff
JUMP L0002
L0014: RFALSE
L0015: JL L01,#00 [FALSE] L0018
STORE L01,#01
LOADB L03,#06 -> -(SP)
AND (SP)+,#74 -> G63
CALL_1S R0055 -> L03
L0016: SUB G73,#01 -> -(SP)
CALL_VS R0051 (L00,(SP)+) -> -(SP)
JZ (SP)+ [TRUE] L0018
INC L01
JZ L03 [TRUE] L0017
LOADB L03,#06 -> -(SP)
AND (SP)+,#74 -> -(SP)
OR G63,(SP)+ -> G63
L0017: CALL_1S R0055 -> L03
JUMP L0016
L0018: STORE L02,L01
JUMP L0002
Routine R0051, 6 locals
JZ L00 [TRUE] RFALSE
STORE L03,G73
STORE G73,L01
CALL_1S R0056 -> L02
STORE G73,L03
JL G33,#0100 [TRUE] L0002
CALL_VS G33 (L00,L02) -> L03
JL L03,#00 [TRUE] L0001
RET L03
L0001: SUB #00,L03 -> L05
JUMP L0003
L0002: STORE L05,G33
L0003: CALL_VS R0319 (L00,L05) -> L03
CALL_VS R0320 (L00,L05) -> -(SP)
DIV (SP)+,#02 -> -(SP)
SUB (SP)+,#01 -> L04
STORE L05,#00
L0004: JG L05,L04 [TRUE] L0005
LOADW L03,L05 -> -(SP)
JE L02,(SP)+ [TRUE] RTRUE
INC L05
JUMP L0004
L0005: RFALSE
Routine R0052, 6 locals
CALL_VS R0319 (L01,L02) -> L03
CALL_VS R0320 (L01,L02) -> -(SP)
DIV (SP)+,#02 -> -(SP)
SUB (SP)+,#01 -> L04
STORE L05,#00
L0001: JG L05,L04 [TRUE] L0002
LOADW L03,L05 -> -(SP)
JE L00,(SP)+ [TRUE] RTRUE
INC L05
JUMP L0001
L0002: RFALSE
Routine R0053, 3 locals
STORE L02,#00
L0001: JL L02,L01 [FALSE] L0002
LOADB L00,L02 -> -(SP)
ADD #02,L02 -> -(SP)
STOREB #2a88,(SP)+,(SP)+
INC L02
JUMP L0001
L0002: STOREB #2a88,#01,L01
TOKENISE #2a88,#2b01
LOADW #2b01,#01 -> -(SP)
RET_POPPED
Routine R0054, 3 locals
CALL_1S R0055 -> L00
JZ L00 [TRUE] RFALSE
JE L00,"me","myself","self" [FALSE] L0001
RTRUE
L0001: LOADW #2bdd,#00 -> L02
STORE L01,#01
JUMP L0003
L0002: ADD L01,#03 -> L01
L0003: JG L01,L02 [TRUE] L0005
LOADW #2bdd,L01 -> -(SP)
JE L00,(SP)+ [FALSE] L0004
ADD L01,#02 -> -(SP)
RET_POPPED
L0004: JUMP L0002
L0005: LOADB L00,#06 -> -(SP)
AND (SP)+,#80 -> -(SP)
JZ (SP)+ [TRUE] RFALSE
RET L00
Routine R0055, 3 locals
LOADB #2a47,#01 -> -(SP)
JG G73,(SP)+ [FALSE] L0001
INC G73
RFALSE
L0001: MUL G73,#02 -> -(SP)
SUB (SP)+,#01 -> L00
INC G73
LOADW #2a47,L00 -> L01
JZ L01 [FALSE] L0003
MUL G73,#04 -> -(SP)
SUB (SP)+,#03 -> L02
LOADB #2a47,L02 -> -(SP)
LOADB #29ce,(SP)+ -> L00
JE L00,#2c [FALSE] L0002
STORE L01,"comma,"
L0002: JE L00,#2e [FALSE] L0003
STORE L01,"then"
L0003: RET L01
Routine R0056, 0 locals
LOADB #2a47,#01 -> -(SP)
JG G73,(SP)+ [FALSE] L0001
INC G73
RET #ffff
L0001: CALL_1S R0055 -> -(SP)
RET_POPPED
Routine R0057, 1 local
MUL L00,#04 -> -(SP)
ADD (SP)+,#01 -> -(SP)
LOADB #2a47,(SP)+ -> -(SP)
ADD #29ce,(SP)+ -> -(SP)
RET_POPPED
Routine R0058, 1 local
MUL L00,#04 -> -(SP)
LOADB #2a47,(SP)+ -> -(SP)
RET_POPPED
Routine R0059, 10 locals
STORE L01,G73
STORE G73,L00
CALL_1S R0055 -> L02
STORE G73,L01
CALL_2S R0106 (L02) -> L02
JL L02,#01 [TRUE] L0001
RET L02
L0001: MUL L00,#04 -> -(SP)
ADD (SP)+,#01 -> L01
LOADB #2a47,L01 -> L02
ADD L02,#29ce -> L04
SUB L01,#01 -> -(SP)
LOADB #2a47,(SP)+ -> L05
CALL_VS R0304 (L04,L05) -> L07
JZ L07 [TRUE] L0002
RET L07
L0002: JL L05,#04 [TRUE] L0003
STORE L06,#03e8
L0003: JE L05,#03 [FALSE] L0004
STORE L06,#64
L0004: JE L05,#02 [FALSE] L0005
STORE L06,#0a
L0005: JE L05,#01 [FALSE] L0006
STORE L06,#01
L0006: STORE L07,#00
STORE L03,#00
SUB L05,#01 -> L05
STORE L03,#00
L0007: JG L03,L05 [TRUE] L0019
LOADB L04,L03 -> L09
JE L09,#30 [FALSE] L0008
STORE L08,#00
JUMP L0018
L0008: JE L09,#31 [FALSE] L0009
STORE L08,#01
JUMP L0018
L0009: JE L09,#32 [FALSE] L0010
STORE L08,#02
JUMP L0018
L0010: JE L09,#33 [FALSE] L0011
STORE L08,#03
JUMP L0018
L0011: JE L09,#34 [FALSE] L0012
STORE L08,#04
JUMP L0018
L0012: JE L09,#35 [FALSE] L0013
STORE L08,#05
JUMP L0018
L0013: JE L09,#36 [FALSE] L0014
STORE L08,#06
JUMP L0018
L0014: JE L09,#37 [FALSE] L0015
STORE L08,#07
JUMP L0018
L0015: JE L09,#38 [FALSE] L0016
STORE L08,#08
JUMP L0018
L0016: JE L09,#39 [FALSE] L0017
STORE L08,#09
JUMP L0018
L0017: RET #fc18
L0018: MUL L06,L08 -> -(SP)
ADD L07,(SP)+ -> L07
DIV L06,#0a -> L06
INC L03
JUMP L0007
L0019: JG L05,#03 [FALSE] L0020
STORE L07,#2710
L0020: RET L07
Routine R0060, 1 local
TEST_ATTR L00,#1c [FALSE] RTRUE
RFALSE
Routine R0061, 3 locals
TEST_ATTR L00,#00 [TRUE] L0001
STORE L01,#06
L0001: TEST_ATTR L00,#1b [FALSE] L0002
STORE L02,#1b
L0002: TEST_ATTR L00,#1c [FALSE] L0003
STORE L02,#1c
L0003: TEST_ATTR L00,#1d [FALSE] L0004
STORE L02,#1d
L0004: JZ L02 [FALSE] L0006
JZ L01 [FALSE] L0005
STORE L02,#1b
JUMP L0006
L0005: STORE L02,#1d
L0006: JE L02,#1c [FALSE] L0007
ADD L01,#01 -> L01
L0007: JE L02,#1d [FALSE] L0008
ADD L01,#02 -> L01
L0008: TEST_ATTR L00,#1e [FALSE] L0009
ADD L01,#03 -> L01
L0009: RET L01
Routine R0062, 1 local
LOADW #00,#04 -> -(SP)
ADD (SP)+,#07 -> -(SP)
SUB L00,(SP)+ -> -(SP)
DIV (SP)+,#09 -> -(SP)
RET_POPPED
Routine R0063, 1 local
MUL #09,L00 -> -(SP)
LOADW #00,#04 -> -(SP)
ADD (SP)+,#07 -> -(SP)
ADD (SP)+,(SP)+ -> -(SP)
RET_POPPED
Routine R0064, 4 locals
LOADB L00,#00 -> L03
STORE L02,#01
L0001: JG L02,L03 [TRUE] L0002
LOADB L01,L02 -> -(SP)
STOREB L00,L02,(SP)+
INC L02
JUMP L0001
L0002: RTRUE
Routine R0065, 3 locals
LOADB #29ce,#01 -> L02
LOADB #29ce,#00 -> -(SP)
JG L02,(SP)+ [FALSE] L0001
LOADB #29ce,#00 -> L02
L0001: ADD L02,#02 -> L02
L0002: JG L02,L00 [FALSE] L0003
SUB L02,#01 -> -(SP)
LOADB #29ce,(SP)+ -> -(SP)
STOREB #29ce,L02,(SP)+
DEC L02
JUMP L0002
L0003: STOREB #29ce,L00,L01
LOADB #29ce,#00 -> -(SP)
LOADB #29ce,#01 -> -(SP)
JL (SP)+,(SP)+ [FALSE] L0004
STORE Gef,#29ce
STORE Gee,#01
LOADB Gef,Gee -> Ged
INC Ged
STOREB Gef,Gee,Ged
L0004: RTRUE
Routine R0066, 4 locals
Action routine for:
"nouns"
CALL_VN R0236 (#00,#01)
LOADW #2bdd,#00 -> -(SP)
DIV (SP)+,#03 -> L02
JE G12,#14 [TRUE] L0001
INC L02
L0001: JZ L02 [FALSE] L0002
CALL_VS R0236 (#00,#04) -> -(SP)
RET_POPPED
L0002: STORE L00,#01
STORE L03,#00
JUMP L0004
L0003: ADD L00,#03 -> L00
L0004: LOADW #2bdd,#00 -> -(SP)
JG L00,(SP)+ [TRUE] L0009
PRINT """
LOADW #2bdd,L00 -> -(SP)
PRINT_ADDR (SP)+
PRINT "" "
ADD L00,#02 -> -(SP)
LOADW #2bdd,(SP)+ -> L01
JE L01,#ffff [FALSE] L0005
CALL_VN R0236 (#00,#03)
JUMP L0006
L0005: CALL_VN R0236 (#00,#02)
CALL_2N R0102 (L01)
L0006: INC L03
SUB L02,#01 -> -(SP)
JL L03,(SP)+ [FALSE] L0007
PRINT ", "
L0007: SUB L02,#01 -> -(SP)
JE L03,(SP)+ [FALSE] L0008
PRINT_PADDR S040
L0008: JUMP L0003
L0009: JE G12,#14 [TRUE] L0010
PRINT """
PRINT_ADDR "me"
PRINT "" "
CALL_VN R0236 (#00,#02)
STORE L02,G12
STORE G12,#14
CALL_2N R0102 (L02)
STORE G12,L02
L0010: PRINT_RET "."
Routine R0067, 3 locals
STORE L02,#01
JUMP L0002
L0001: ADD L02,#03 -> L02
L0002: LOADW #2bdd,#00 -> -(SP)
JG L02,(SP)+ [TRUE] L0004
LOADW #2bdd,L02 -> -(SP)
JE (SP)+,L00 [FALSE] L0003
ADD L02,#02 -> -(SP)
STOREW #2bdd,(SP)+,L01
RTRUE
L0003: JUMP L0001
L0004: CALL_2N R0111 (#0e)
RTRUE
Routine R0068, 2 locals
STORE L01,#01
JUMP L0002
L0001: ADD L01,#03 -> L01
L0002: LOADW #2bdd,#00 -> -(SP)
JG L01,(SP)+ [TRUE] L0004
LOADW #2bdd,L01 -> -(SP)
JE (SP)+,L00 [FALSE] L0003
ADD L01,#02 -> -(SP)
LOADW #2bdd,(SP)+ -> -(SP)
RET_POPPED
L0003: JUMP L0001
L0004: RFALSE
Routine R0069, 1 local
CALL_2N R0071 (L00)
RTRUE
Routine R0070, 0 locals
JE G7d,G80 [TRUE] L0001
CALL_VN R0067 ("it",G7d)
L0001: JE G7e,G81 [TRUE] L0002
CALL_VN R0067 ("him",G7e)
L0002: JE G7f,G82 [TRUE] L0003
CALL_VN R0067 ("her",G7f)
L0003: STORE G80,G7d
STORE G81,G7e
STORE G82,G7f
RTRUE
Routine R0071, 3 locals
JE L00,G12 [FALSE] L0001
RTRUE
L0001: CALL_1N R0070
CALL_2S R0061 (L00) -> -(SP)
LOADW #2bc5,(SP)+ -> L02
STORE L01,#01
JUMP L0003
L0002: ADD L01,#03 -> L01
L0003: LOADW #2bdd,#00 -> -(SP)
JG L01,(SP)+ [TRUE] L0005
ADD L01,#01 -> -(SP)
LOADW #2bdd,(SP)+ -> -(SP)
AND L02,(SP)+ -> -(SP)
JZ (SP)+ [TRUE] L0004
ADD L01,#02 -> -(SP)
STOREW #2bdd,(SP)+,L00
L0004: JUMP L0002
L0005: CALL_2S R0068 ("it") -> G7d
STORE G80,G7d
CALL_2S R0068 ("him") -> G7e
STORE G81,G7e
CALL_2S R0068 ("her") -> G7f
STORE G82,G7f
RTRUE
Routine R0072, 4 locals
LOADW #32,#00 -> G04
CALL_VN R0085 (#26,S028)
STORE G15,#13
STORE G12,#14
SUB #0161,#ff -> G03
PUT_PROP "(self object)",#2d,#0064
CALL_1S R0238 -> L01
STORE G0e,G0d
INSERT_OBJ G12,G00
L0001: GET_PARENT G00 -> -(SP)
JZ (SP)+ [TRUE] L0002
GET_PARENT G00 -> G00
JUMP L0001
L0002: GET_CHILD G12 -> -(SP) [FALSE] L0003
L0003: PULL L00
JZ L00 [TRUE] L0005
L0004: SET_ATTR L00,#0c
CLEAR_ATTR L00,#03
GET_SIBLING L00 -> L00 [TRUE] L0004
L0005: JE L01,#02 [TRUE] L0006
CALL_1N R0109
L0006: GET_PARENT G12 -> -(SP)
CALL_2S R0094 ((SP)+) -> G14
JZ G14 [FALSE] L0007
STORE G15,G00
STORE G00,#13
L0007: CALL_2N R0075 (#1f)
STORE L00,#01
L0008: JG L00,#64 [TRUE] L0009
RANDOM L00 -> L01
INC L00
JUMP L0008
L0009: STORE G80,G7d
STORE G81,G7e
STORE G82,G7f
L0010: JZ G13 [FALSE] L0045
JE G0d,G0e [TRUE] L0012
JE G0f,#01 [FALSE] L0011
CALL_1N R0092
L0011: STORE G0e,G0d
L0012: CALL_1N R0070
CALL_2S R0068 ("it") -> G80
CALL_2S R0068 ("him") -> G81
CALL_2S R0068 ("her") -> G82
L0013: STOREW #264e,#00,#00
STOREW #264e,#01,#00
STOREW #264e,#02,#00
STOREW #264e,#03,#00
STORE G36,#00
CALL_VN R0318 (#15,#48,#264e)
LOADW #264e,#00 -> G27
JE G27,#5b,#5c [FALSE] L0015
LOADW #264e,#02 -> L00
LOADW #264e,#03 -> -(SP)
STOREW #264e,#02,(SP)+
STOREW #264e,#03,L00
JE G27,#5b [FALSE] L0014
STORE G27,#15
JUMP L0015
L0014: STORE G27,#16
L0015: JE G27,#51 [FALSE] L0016
LOADW #264e,#02 -> -(SP)
JE (SP)+,G12 [FALSE] L0016
JE G34,G12 [TRUE] L0016
STOREW #264e,#02,G34
STORE G34,G12
STORE G27,#53
L0016: JE G27,#5a [FALSE] L0017
LOADW #264e,#02 -> -(SP)
JE (SP)+,G12 [TRUE] L0017
JE G34,G12 [FALSE] L0017
LOADW #264e,#02 -> G34
LOADW #264e,#03 -> -(SP)
STOREW #264e,#02,(SP)+
STOREW #264e,#03,G12
STORE G27,#15
L0017: JE G27,#53,#51,#52 [FALSE] L0018
STORE G39,G48
L0018: STORE G37,#00
STORE G3f,G3e
STORE G3e,#00
L0019: STORE G28,#00
STORE G29,#00
LOADW #264e,#01 -> L00
JL L00,#01 [TRUE] L0020
LOADW #264e,#02 -> G28
L0020: JL L00,#02 [TRUE] L0021
LOADW #264e,#03 -> G29
L0021: JE G28,#01 [FALSE] L0022
STORE G2a,G48
JUMP L0023
L0022: STORE G2a,G28
L0023: JE G29,#01 [FALSE] L0026
JE G28,#01 [FALSE] L0024
STORE G2b,G49
JUMP L0025
L0024: STORE G2b,G48
L0025: JUMP L0027
L0026: STORE G2b,G29
L0027: JE G34,G12 [TRUE] L0030
CALL_VS R0084 (G12,#1d) -> L01
JZ L01 [FALSE] L0029
CALL_VS R0084 (G34,#1d) -> L01
JZ L01 [FALSE] L0029
JE G27,#1009 [FALSE] L0028
STOREW #264e,#03,G34
STORE G34,G12
STORE G27,#52
JUMP L0019
L0028: CALL_VS R0080 (G34,#1003) -> -(SP)
JZ (SP)+ [FALSE] L0029
CALL_VN R0236 (#1003,#01,G34)
L0029: JUMP L0041
L0030: JZ L00 [TRUE] L0032
JE L00,#01 [FALSE] L0031
JZ G28 [FALSE] L0032
L0031: JE L00,#02 [FALSE] L0033
JZ G28 [TRUE] L0033
JZ G29 [TRUE] L0033
L0032: CALL_VN2 R0318 (Geb,#004b,G27,G2a,G2b,#00)
JUMP L0041
L0033: STORE G37,#01
LOADW #266e,#00 -> L01
JZ L01 [FALSE] L0034
CALL_VN R0236 (#1007,#02)
JUMP L0013
L0034: JZ G38 [TRUE] L0035
STORE G38,#00
CALL_VN R0236 (#1007,#01)
L0035: STORE L00,G00
STORE L02,#01
L0036: JG L02,L01 [TRUE] L0041
JZ G13 [TRUE] L0037
JUMP L0041
L0037: JE G00,L00 [TRUE] L0038
CALL_VN R0236 (#1007,#33)
JUMP L0041
L0038: LOADW #266e,L02 -> L03
CALL_2N R0071 (L03)
CALL_2N R0104 (L03)
PRINT ": "
JZ G28 [FALSE] L0039
STORE G28,L03
CALL_VN2 R0318 (Geb,#004b,G27,L03,G2b,#00)
STORE G28,#00
JUMP L0040
L0039: STORE G29,L03
CALL_VN2 R0318 (Geb,#004b,G27,G2a,L03,#00)
STORE G29,#00
L0040: INC L02
JUMP L0036
L0041: JE G3e,#01 [FALSE] L0042
JUMP L0010
L0042: JZ G36 [TRUE] L0043
JUMP L0010
L0043: JZ G13 [FALSE] L0044
CALL_VN R0318 (Geb,#004a)
L0044: JUMP L0010
L0045: JE G13,#02 [TRUE] L0046
CALL_1N R0295
L0046: JZ G13 [FALSE] L0047
JUMP L0013
L0047: PRINT "
"
SET_TEXT_STYLE BOLDFACE
PRINT "***"
JE G13,#01 [FALSE] L0048
CALL_VN R0236 (#1007,#03)
L0048: JE G13,#02 [FALSE] L0049
CALL_VN R0236 (#1007,#04)
L0049: JG G13,#02 [FALSE] L0050
PRINT " "
CALL_1N R0291
PRINT " "
L0050: PRINT "***"
SET_TEXT_STYLE ROMAN
PRINT "
"
CALL_1N R0139
CALL_1N R0090
L0051: CALL_VN R0236 (#1007,#05)
L0052: PRINT "> "
STORE Gef,#00
STORE Gec,#29ce
STOREB Gec,#01,#00
CALL_1N R0239
READ Gec,#2a47 -> Gef
LOADW #2a47,#01 -> L00
JE L00,"q","quit" [FALSE] L0053
QUIT
L0053: JE L00,"restart" [FALSE] L0054
RESTART
L0054: JE L00,"restore" [FALSE] L0055
CALL_1N R0130
JUMP L0051
L0055: JE L00,"fullscore","full" [FALSE] L0056
JZ #0001 [FALSE] L0056
NEW_LINE
CALL_1N R0142
JUMP L0051
L0056: JE G13,#02 [FALSE] L0057
JE L00,"amusing" [FALSE] L0057
JZ #0001 [FALSE] L0057
NEW_LINE
CALL_1N R0290
JUMP L0051
L0057: JE L00,"undo","undo","undo" [FALSE] L0062
JZ G05 [FALSE] L0058
CALL_VN R0236 (#1007,#06)
JUMP L0051
L0058: JE G05,#01 [FALSE] L0059
JUMP L0060
L0059: RESTORE_UNDO -> L00
JZ L00 [FALSE] L0061
L0060: CALL_VN R0236 (#1007,#07)
L0061: JUMP L0051
L0062: CALL_VN R0236 (#1007,#08)
JUMP L0052
Routine R0073, 2 locals
INC G08
JE G09,#ffff [TRUE] L0003
JL G0a,#00 [TRUE] L0001
ADD G09,G0a -> G09
JUMP L0002
L0001: DEC G0b
JZ G0b [FALSE] L0002
INC G09
SUB #00,G0a -> G0b
L0002: MOD G09,#05a0 -> G09
L0003: STORE L00,#00
L0004: JL L00,G0c [FALSE] L0009
JZ G13 [TRUE] L0005
RTRUE
L0005: LOADW #260e,L00 -> L01
JZ L01 [TRUE] L0008
AND L01,#8000 -> -(SP)
JZ (SP)+ [TRUE] L0006
AND L01,#7fff -> -(SP)
CALL_VN R0084 ((SP)+,#2b)
JUMP L0008
L0006: GET_PROP L01,#28 -> -(SP)
JZ (SP)+ [FALSE] L0007
CALL_2N R0087 (L01)
CALL_VN R0084 (L01,#2a)
JUMP L0008
L0007: GET_PROP L01,#28 -> -(SP)
SUB (SP)+,#01 -> -(SP)
PUT_PROP L01,#28,(SP)+
L0008: INC L00
JUMP L0004
L0009: JZ G13 [TRUE] L0010
RTRUE
L0010: STORE G68,#02
STORE G75,#00
CALL_2N R0045 (G00)
CALL_2S R0023 (G12) -> -(SP)
CALL_VN R0042 ((SP)+,G12,#00)
STORE G68,#00
JZ G13 [TRUE] L0011
RTRUE
L0011: CALL_1N R0289
JZ G13 [TRUE] L0012
RTRUE
L0012: CALL_1N R0093
JZ G13 [TRUE] L0013
RTRUE
L0013: STORE L00,#01
L0014: JIN L00,G12 [FALSE] L0015
TEST_ATTR L00,#0c [TRUE] L0015
SET_ATTR L00,#0c
TEST_ATTR L00,#12 [FALSE] L0015
ADD G0d,#0004 -> G0d
ADD G11,#0004 -> G11
L0015: INC L00
JG L00,#0062 [TRUE] L0016
JUMP L0014
L0016: RFALSE
Routine R0074, 8 locals
STORE L04,G27
STORE L05,G2a
STORE L06,G2b
STORE G27,L00
STORE G2a,L01
STORE G2b,L02
STORE L03,#00
JZ G36 [FALSE] L0001
CALL_1S R0078 -> -(SP)
JZ (SP)+ [FALSE] L0002
L0001: JL G27,#1000 [FALSE] L0002
LOADW #3a7d,G27 -> -(SP)
CALL_1N (SP)+
STORE L07,#00
JUMP L0003
L0002: STORE L07,#01
L0003: STORE G27,L04
STORE G2a,L05
STORE G2b,L06
RFALSE
Routine R0075, 5 locals
STORE L03,G28
STORE L04,G29
STORE G28,L01
STORE G29,L02
CALL_VN2 R0318 (#16,#4b,L00,L01,L02,#01)
STORE G28,L03
STORE G29,L04
RTRUE
Routine R0076, 7 locals
STORE L05,G31
STORE L06,G32
STORE G31,L00
STORE G32,#00
STORE L02,G34
STORE L03,G35
STORE L04,G68
STORE G68,#06
JZ L01 [FALSE] L0001
STORE G34,G12
JUMP L0002
L0001: STORE G34,L01
L0002: CALL_2S R0023 (G34) -> G35
CALL_VN R0042 (G35,G34,#00)
STORE G68,L04
STORE G34,L02
STORE G35,L03
STORE G31,L05
STORE L05,G32
STORE G32,L06
RET L05
Routine R0077, 6 locals
STORE L02,G31
STORE L03,G68
STORE L04,G34
STORE L05,G35
STORE G31,L00
JZ L01 [FALSE] L0001
STORE G34,G12
JUMP L0002
L0001: STORE G34,L01
L0002: CALL_2S R0023 (G34) -> G35
STORE G68,#05
CALL_VN R0042 (G35,G34,#00)
STORE G31,L02
STORE G68,L03
STORE G34,L04
STORE G35,L05
RTRUE
Routine R0078, 0 locals
CALL_1S R0296 -> -(SP)
JZ (SP)+ [FALSE] RTRUE
CALL_VS R0084 (G12,#1d) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
JZ G00 [TRUE] L0001
CALL_VS R0084 (G00,#04) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0001: STORE G68,#03
STORE G31,#00
CALL_2S R0023 (G12) -> -(SP)
CALL_VN R0042 ((SP)+,G12,#00)
STORE G68,#00
JZ G31 [FALSE] RTRUE
JG G28,#01 [FALSE] L0002
CALL_VS R0084 (G28,#04) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0002: RFALSE
Routine R0079, 0 locals
STORE G68,#04
STORE G31,#00
CALL_2S R0023 (G12) -> -(SP)
CALL_VN R0042 ((SP)+,G12,#00)
STORE G68,#00
JZ G31 [FALSE] RTRUE
JZ G00 [TRUE] L0001
CALL_VS R0084 (G00,#05) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0001: JG G28,#01 [FALSE] L0002
CALL_VS R0084 (G28,#05) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0002: CALL_1S R0297 -> -(SP)
RET_POPPED
Routine R0080, 2 locals
STORE G2d,L01
CALL_VS R0084 (L00,#06) -> -(SP)
RET_POPPED
Routine R0081, 1 local
CALL_VS R0327 (L00) -> -(SP)
PULL Gef
JE Gef,#00 [FALSE] L0001
RFALSE
L0001: JE Gef,#02,#01 [FALSE] L0002
RTRUE
L0002: JE Gef,#03 [FALSE] L0003
RET #02
L0003: JE Gef,#04 [FALSE] L0004
RET #03
L0004: RTRUE
Routine R0082, 3 locals
CALL_VS R0320 (L00,L01) -> -(SP)
JG (SP)+,#02 [FALSE] L0001
CALL_VS R0084 (L00,L01) -> -(SP)
RET_POPPED
L0001: CALL_VS R0317 (L00,L01) -> -(SP)
JE (SP)+,#ffff [TRUE] RFALSE
CALL_VS R0317 (L00,L01) -> -(SP)
CALL_VS R0327 ((SP)+) -> -(SP)
PULL Gef
JE Gef,#01,#02,#00 [FALSE] L0002
CALL_VS R0111 (#02,L00,L01) -> -(SP)
RET_POPPED
L0002: JE Gef,#04 [FALSE] L0004
CALL_VS R0317 (L00,L01) -> -(SP)
PRINT_PADDR (SP)+
JZ L02 [FALSE] L0003
NEW_LINE
L0003: RTRUE
L0004: JE Gef,#03 [FALSE] L0005
CALL_VS R0084 (L00,L01) -> -(SP)
RET_POPPED
L0005: RTRUE
Routine R0083, 2 locals
CALL_VS R0317 (L00,L01) -> -(SP)
JL (SP)+,#0100 [FALSE] L0001
CALL_VS R0317 (L00,L01) -> -(SP)
RET_POPPED
L0001: CALL_VS R0084 (L00,L01) -> -(SP)
RET_POPPED
Routine R0084, 2 locals
JE L00,#13 [FALSE] L0001
JE L01,#1e,#2e,#23 [TRUE] L0001
STORE L00,G15
L0001: CALL_VS R0319 (L00,L01) -> -(SP)
JZ (SP)+ [TRUE] RFALSE
CALL_VS R0318 (L00,L01) -> -(SP)
RET_POPPED
Routine R0085, 2 locals
SUB L00,#01 -> -(SP)
LOADW #00,#05 -> -(SP)
STOREW (SP)+,(SP)+,L01
RTRUE
Routine R0086, 3 locals
STORE L02,#00
L0001: JL L02,G0c [FALSE] L0002
LOADW #260e,L02 -> -(SP)
JE (SP)+,L00 [TRUE] RFALSE
INC L02
JUMP L0001
L0002: STORE L02,#00
L0003: JL L02,G0c [FALSE] L0005
LOADW #260e,L02 -> -(SP)
JZ (SP)+ [FALSE] L0004
JUMP L0006
L0004: INC L02
JUMP L0003
L0005: STORE L02,G0c
INC G0c
MUL L02,#02 -> -(SP)
JL (SP)+,#40 [TRUE] L0006
CALL_2N R0111 (#04)
L0006: GET_PROP_ADDR L00,#28 -> -(SP)
JZ (SP)+ [FALSE] L0007
CALL_VN R0111 (#05,L00)
L0007: STOREW #260e,L02,L00
PUT_PROP L00,#28,L01
RTRUE
Routine R0087, 2 locals
STORE L01,#00
L0001: JL L01,G0c [FALSE] L0003
LOADW #260e,L01 -> -(SP)
JE (SP)+,L00 [FALSE] L0002
JUMP L0004
L0002: INC L01
JUMP L0001
L0003: RFALSE
L0004: GET_PROP_ADDR L00,#28 -> -(SP)
JZ (SP)+ [FALSE] L0005
CALL_VN R0111 (#05,L00)
L0005: STOREW #260e,L01,#00
PUT_PROP L00,#28,#00
RTRUE
Routine R0088, 2 locals
STORE L01,#00
L0001: JL L01,G0c [FALSE] L0002
ADD #8000,L00 -> -(SP)
LOADW #260e,L01 -> -(SP)
JE (SP)+,(SP)+ [TRUE] RFALSE
INC L01
JUMP L0001
L0002: STORE L01,#00
L0003: JL L01,G0c [FALSE] L0005
LOADW #260e,L01 -> -(SP)
JZ (SP)+ [FALSE] L0004
JUMP L0006
L0004: INC L01
JUMP L0003
L0005: STORE L01,G0c
INC G0c
MUL L01,#02 -> -(SP)
JL (SP)+,#40 [TRUE] L0006
CALL_2N R0111 (#04)
L0006: ADD #8000,L00 -> -(SP)
STOREW #260e,L01,(SP)+
RTRUE
Routine R0089, 2 locals
STORE L01,#00
L0001: JL L01,G0c [FALSE] L0003
ADD #8000,L00 -> -(SP)
LOADW #260e,L01 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0002
JUMP L0004
L0002: INC L01
JUMP L0001
L0003: RFALSE
L0004: STOREW #260e,L01,#00
RTRUE
Routine R0090, 0 locals
JE G09,#ffff [FALSE] L0001
STORE G01,G0d
STORE G02,G08
JUMP L0002
L0001: DIV G09,#3c -> G01
MOD G09,#3c -> G02
L0002: RTRUE
Routine R0091, 2 locals
STORE G09,L00
STORE G0a,L01
STORE G0b,#00
JL L01,#00 [FALSE] L0001
SUB #00,L01 -> G0b
L0001: RTRUE
Routine R0092, 0 locals
PRINT "
["
SUB G0d,G0e -> -(SP)
CALL_VN R0236 (#1007,#32,(SP)+)
PRINT ".]
"
RTRUE
Routine R0093, 2 locals
STORE L01,G14
GET_PARENT G12 -> -(SP)
CALL_2S R0094 ((SP)+) -> G14
JZ L01 [FALSE] L0001
JE G14,#01 [FALSE] L0001
STORE G00,G15
JZ L00 [FALSE] L0001
CALL_2N R0075 (#1f)
L0001: JE L01,#01 [FALSE] L0002
JZ G14 [FALSE] L0002
STORE G15,G00
STORE G00,#13
JZ L00 [FALSE] L0002
CALL_1N R0173
CALL_VS R0236 (#1007,#09) -> -(SP)
RET_POPPED
L0002: JZ L01 [FALSE] L0003
JZ G14 [FALSE] L0003
STORE G00,#13
L0003: RTRUE
Routine R0094, 2 locals
JZ L00 [TRUE] RFALSE
TEST_ATTR L00,#09 [TRUE] RTRUE
GET_CHILD L00 -> -(SP) [FALSE] L0001
L0001: PULL L01
JZ L01 [TRUE] L0003
L0002: CALL_2S R0095 (L01) -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
GET_SIBLING L01 -> L01 [TRUE] L0002
L0003: TEST_ATTR L00,#04 [FALSE] L0006
TEST_ATTR L00,#0e [TRUE] L0004
TEST_ATTR L00,#17 [FALSE] L0005
L0004: GET_PARENT L00 -> -(SP)
CALL_2S R0094 ((SP)+) -> -(SP)
RET_POPPED
L0005: JUMP L0008
L0006: TEST_ATTR L00,#07 [TRUE] L0007
TEST_ATTR L00,#17 [TRUE] L0007
TEST_ATTR L00,#14 [FALSE] L0008
L0007: GET_PARENT L00 -> -(SP)
CALL_2S R0094 ((SP)+) -> -(SP)
RET_POPPED
L0008: RFALSE
Routine R0095, 3 locals
JZ L00 [TRUE] RFALSE
TEST_ATTR L00,#09 [TRUE] RTRUE
TEST_ATTR L00,#07 [TRUE] L0001
CALL_2S R0043 (L00) -> -(SP)
JE (SP)+,#01 [FALSE] L0004
L0001: GET_CHILD L00 -> -(SP) [FALSE] L0002
L0002: PULL L00
JZ L00 [TRUE] L0004
L0003: CALL_2S R0095 (L00) -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
GET_SIBLING L00 -> L00 [TRUE] L0003
L0004: GET_PROP_ADDR L00,#18 -> L02
GET_PARENT L00 -> -(SP)
JZ (SP)+ [TRUE] L0008
JZ L02 [TRUE] L0008
LOADW L02,#00 -> -(SP)
JG (SP)+,G03 [FALSE] L0005
STORE G6d,#00
STORE G6c,#01
CALL_VN R0084 (L00,#18)
STORE G6c,#00
JE G6d,#01 [TRUE] RTRUE
JUMP L0008
L0005: STORE L01,#00
L0006: GET_PROP_ADDR L00,#18 -> Gef
JZ Gef [TRUE] L0007
GET_PROP_LEN Gef -> Gef
L0007: PUSH Gef
MUL #02,L01 -> -(SP)
JL (SP)+,(SP)+ [FALSE] L0008
LOADW L02,L01 -> -(SP)
CALL_2S R0095 ((SP)+) -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
INC L01
JUMP L0006
L0008: RFALSE
Routine R0096, 3 locals
GET_PROP_ADDR L00,#29 -> -(SP)
JZ (SP)+ [FALSE] L0001
CALL_VS R0111 (#07,L00) -> -(SP)
RET_POPPED
L0001: JE G34,G12 [FALSE] L0002
STORE G34,L00
L0002: CLEAR_ATTR G12,#17
CLEAR_ATTR G12,#03
STORE L02,L00
L0003: GET_PARENT L02 -> -(SP)
JZ (SP)+ [TRUE] L0005
TEST_ATTR L02,#00 [FALSE] L0004
SET_ATTR L02,#17
L0004: GET_PARENT L02 -> L02
JUMP L0003
L0005: JE G12,#14 [FALSE] L0006
PUT_PROP G12,#2e,S029
L0006: PUT_PROP G12,#29,G15
STORE G12,L00
JE G12,#14 [FALSE] L0007
PUT_PROP G12,#2e,#ffff
L0007: SET_ATTR G12,#17
SET_ATTR G12,#03
SET_ATTR G12,#00
SET_ATTR G12,#10
STORE L02,G12
L0008: GET_PARENT L02 -> -(SP)
JZ (SP)+ [TRUE] L0009
GET_PARENT L02 -> L02
JUMP L0008
L0009: STORE G00,L02
GET_PROP G12,#29 -> G15
JZ G15 [FALSE] L0010
STORE G15,G00
L0010: GET_PARENT G12 -> -(SP)
CALL_2S R0094 ((SP)+) -> G14
JZ G14 [FALSE] L0011
STORE G00,#13
L0011: STORE G17,L01
RTRUE
Routine R0097, 7 locals
INC G21
L0001: STORE G22,#00
CALL_1S L01 -> L03
STORE L04,G24
PRINT "--- "
PRINT_PADDR L04
PRINT " ---
"
CALL_VS R0322 (L00,#03) -> -(SP)
JZ (SP)+ [TRUE] L0002
CALL_VN R0318 (L00,#45)
JUMP L0003
L0002: PRINT_PADDR L00
L0003: CALL_VN R0236 (#1007,#34,L03)
PRINT "> "
STORE Gec,#29ce
STOREB Gec,#01,#00
CALL_1N R0239
READ Gec,#2a47 -> Gef
LOADW #2a47,#01 -> L05
JE L05,"q","quit" [TRUE] L0004
LOADB #2a47,#01 -> -(SP)
JZ (SP)+ [FALSE] L0006
L0004: DEC G21
JG G21,#00 [TRUE] RFALSE
JZ G13 [FALSE] L0005
CALL_2N R0075 (#1f)
RTRUE
L0005: RFALSE
L0006: CALL_2S R0059 (#01) -> L05
JZ L05 [FALSE] L0007
JUMP L0001
L0007: JL L05,#01 [TRUE] L0008
JG L05,L03 [FALSE] L0009
L0008: JUMP L0003
L0009: STORE G22,L05
CALL_1S L02 -> L06
JE L06,#02 [FALSE] L0010
JUMP L0001
L0010: JE L06,#03 [TRUE] RFALSE
JUMP L0003
Routine R0098, 11 locals
JZ G20 [FALSE] L0001
CALL_VS R0097 (L00,L01,L02) -> -(SP)
RET_POPPED
L0001: INC G21
STORE G22,#00
CALL_1S L01 -> L03
STORE L04,G24
STORE L05,G23
STORE L06,#07
L0002: STORE L09,#00
ERASE_WINDOW #ffff
ADD L03,#07 -> L07
SPLIT_WINDOW L07
LOADB #00,#21 -> L07
JZ L07 [FALSE] L0003
STORE L07,#50
L0003: SET_WINDOW #01
SET_CURSOR #01,#01
SET_TEXT_STYLE REVERSE
STORE Gef,L07
JL Gef,#01 [TRUE] L0005
L0004: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0004
L0005: DIV L07,#02 -> -(SP)
SUB (SP)+,L05 -> L08
SET_CURSOR #01,L08
PRINT_PADDR L04
SET_CURSOR #02,#01
STORE Gef,L07
JL Gef,#01 [TRUE] L0007
L0006: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0006
L0007: SET_CURSOR #02,#02
PRINT_PADDR S020
SUB L07,#0c -> L08
SET_CURSOR #02,L08
PRINT_PADDR S021
SET_CURSOR #03,#01
STORE Gef,L07
JL Gef,#01 [TRUE] L0009
L0008: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0008
L0009: SET_CURSOR #03,#02
PRINT_PADDR S024
SUB L07,#11 -> L08
SET_CURSOR #03,L08
JE G21,#01 [FALSE] L0010
PRINT_PADDR S022
JUMP L0011
L0010: PRINT_PADDR S023
L0011: SET_TEXT_STYLE ROMAN
SET_CURSOR #05,#02
LOADW #00,#08 -> Gef
OR #02,Gef -> Gef
STOREW #00,#08,Gef
CALL_VS R0322 (L00,#04) -> -(SP)
JZ (SP)+ [TRUE] L0012
PRINT_PADDR L00
JUMP L0013
L0012: CALL_VN R0318 (L00,#45)
L0013: JE L06,L09 [TRUE] L0015
JG L09,#00 [FALSE] L0014
SET_CURSOR L09,#04
PRINT " "
L0014: SET_CURSOR L06,#04
PRINT ">"
L0015: STORE L09,L06
READ_CHAR #01 -> L0a
JE L0a,#4e,#6e,#82 [FALSE] L0017
INC L06
ADD #07,L03 -> -(SP)
JE L06,(SP)+ [FALSE] L0016
STORE L06,#07
L0016: JUMP L0013
L0017: JE L0a,#50,#70,#81 [FALSE] L0019
DEC L06
JE L06,#06 [FALSE] L0018
ADD #06,L03 -> L06
L0018: JUMP L0013
L0019: JE L0a,#51,#71,#1b [TRUE] L0020
JE L0a,#83 [FALSE] L0021
L0020: JUMP L0028
L0021: JE L0a,#0a,#0d,#84 [FALSE] L0027
SET_WINDOW #00
LOADW #00,#08 -> Gef
AND #fffd,Gef -> Gef
STOREW #00,#08,Gef
NEW_LINE
NEW_LINE
NEW_LINE
SUB L06,#06 -> G22
CALL_VN R0318 (L01,#45)
ERASE_WINDOW #ffff
SPLIT_WINDOW #01
LOADB #00,#21 -> L07
JZ L07 [FALSE] L0022
STORE L07,#50
L0022: SET_WINDOW #01
SET_CURSOR #01,#01
SET_TEXT_STYLE REVERSE
STORE Gef,L07
JL Gef,#01 [TRUE] L0024
L0023: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0023
L0024: DIV L07,#02 -> -(SP)
SUB (SP)+,G23 -> L08
SET_CURSOR #01,L08
PRINT_PADDR G24
SET_TEXT_STYLE ROMAN
SET_WINDOW #00
NEW_LINE
CALL_VS R0318 (L02,#45) -> L07
JE L07,#02 [FALSE] L0025
JUMP L0002
L0025: JE L07,#03 [FALSE] L0026
JUMP L0028
L0026: CALL_VN R0236 (#1007,#35)
READ_CHAR #01 -> L0a
JUMP L0002
L0027: JUMP L0013
L0028: DEC G21
JG G21,#00 [TRUE] RFALSE
LOADW #00,#08 -> Gef
AND #fffd,Gef -> Gef
STOREW #00,#08,Gef
SET_CURSOR #01,#01
ERASE_WINDOW #ffff
SET_WINDOW #00
NEW_LINE
NEW_LINE
NEW_LINE
JZ G13 [FALSE] L0029
CALL_2N R0075 (#1f)
RTRUE
L0029: RTRUE
Routine R0099, 6 locals
CALL_VS R0321 (L00,#31) -> -(SP)
JZ (SP)+ [TRUE] L0002
MUL G7c,#01 -> -(SP)
ADD L01,(SP)+ -> -(SP)
GET_PROP_ADDR L00,#31 -> -(SP)
LOADW (SP)+,(SP)+ -> -(SP)
PRINT_PADDR (SP)+
PRINT " "
JZ L02 [TRUE] L0001
RTRUE
L0001: CALL_2N R0100 (L00)
RTRUE
L0002: CALL_2S R0061 (L00) -> L03
JZ L02 [TRUE] L0004
JL L03,#03 [TRUE] L0003
JL L03,#06 [TRUE] L0004
JL L03,#09 [FALSE] L0004
L0003: ADD L03,#03 -> L03
L0004: LOADW #2ce3,L03 -> L03
MUL L03,#01 -> -(SP)
ADD G7c,(SP)+ -> -(SP)
MUL #0c,(SP)+ -> -(SP)
ADD #2ccb,(SP)+ -> L04
ADD L01,#03 -> -(SP)
LOADW L04,(SP)+ -> -(SP)
LOADW L04,L01 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0005
STORE L05,#01
L0005: JZ G04 [TRUE] L0008
JZ L05 [TRUE] L0008
STOREW #2cfb,#00,#a0
OUTPUT_STREAM REDIRECT_ENABLE,#2cfb
JZ L02 [TRUE] L0006
CALL_2N R0105 (L02)
JUMP L0007
L0006: CALL_2N R0100 (L00)
L0007: OUTPUT_STREAM #fffd
ADD #2cfb,#02 -> -(SP)
CALL_2S R0004 ((SP)+) -> -(SP)
MUL #03,(SP)+ -> -(SP)
ADD L01,(SP)+ -> L01
L0008: LOADW L04,L01 -> -(SP)
PRINT_PADDR (SP)+
JZ L02 [TRUE] L0009
RTRUE
L0009: CALL_2N R0100 (L00)
RTRUE
Routine R0100, 1 local
JZ L00 [FALSE] L0001
PRINT_PADDR S035
RTRUE
L0001: CALL_VS R0327 (L00) -> -(SP)
PULL Gef
JE Gef,#03 [FALSE] L0002
PRINT "<routine "
PRINT_NUM L00
PRINT ">"
RTRUE
L0002: JE Gef,#04 [FALSE] L0003
PRINT "<string ""
PRINT_PADDR L00
PRINT "">"
RTRUE
L0003: JE Gef,#00 [FALSE] L0004
PRINT "<illegal object number "
PRINT_NUM L00
PRINT ">"
RTRUE
L0004: JE L00,G12 [FALSE] L0005
PRINT_PADDR S030
RTRUE
L0005: JZ G5a [TRUE] L0006
GET_PROP_ADDR L00,#2f -> -(SP)
JZ (SP)+ [TRUE] L0006
CALL_VS R0082 (L00,#2f,#01) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0006: GET_PROP_ADDR L00,#2e -> -(SP)
JZ (SP)+ [TRUE] L0007
CALL_VS R0082 (L00,#2e,#01) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0007: PRINT_OBJ L00
RTRUE
Routine R0101, 2 locals
STORE L01,G5a
STORE G5a,#01
TEST_ATTR L00,#10 [FALSE] L0001
STORE G5a,#ffff
CALL_2N R0100 (L00)
RTRUE
L0001: CALL_VS R0321 (L00,#25) -> -(SP)
JZ (SP)+ [TRUE] L0002
CALL_VN R0082 (L00,#25,#01)
PRINT " "
CALL_2N R0100 (L00)
STORE G5a,L01
RTRUE
L0002: CALL_VN R0099 (L00,#02)
STORE G5a,L01
RTRUE
Routine R0102, 2 locals
STORE L01,G5a
STORE G5a,#00
TEST_ATTR L00,#10 [FALSE] L0001
STORE G5a,#ffff
CALL_2N R0100 (L00)
STORE G5a,L01
RTRUE
L0001: CALL_VN R0099 (L00,#01)
STORE G5a,L01
RTRUE
Routine R0103, 2 locals
STORE L01,G5a
STORE G5a,#00
TEST_ATTR L00,#10 [FALSE] L0001
STORE G5a,#ffff
CALL_2N R0100 (L00)
STORE G5a,L01
RTRUE
L0001: CALL_VN R0099 (L00,#00)
STORE G5a,L01
RTRUE
Routine R0104, 2 locals
STORE L01,G5a
STORE G5a,#ffff
CALL_2N R0100 (L00)
STORE G5a,L01
RTRUE
Routine R0105, 1 local
CALL_2N R0006 (L00)
RTRUE
Routine R0106, 3 locals
LOADW #2c79,#00 -> L02
STORE L01,#01
JUMP L0002
L0001: ADD L01,#02 -> L01
L0002: JG L01,L02 [TRUE] L0004
LOADW #2c79,L01 -> -(SP)
JE L00,(SP)+ [FALSE] L0003
ADD L01,#01 -> -(SP)
LOADW #2c79,(SP)+ -> -(SP)
RET_POPPED
L0003: JUMP L0001
L0004: RFALSE
Routine R0107, 1 local
LOADW L00,#00 -> -(SP)
JZ (SP)+ [FALSE] L0001
CALL_2S R0111 (#08) -> -(SP)
RET_POPPED
L0001: LOADW L00,#00 -> -(SP)
RANDOM (SP)+ -> -(SP)
LOADW L00,(SP)+ -> -(SP)
RET_POPPED
Routine R0108, 4 locals
JE L00,L01 [FALSE] L0001
RFALSE
L0001: JL L00,#00 [FALSE] L0002
JL L01,#00 [TRUE] L0002
RTRUE
L0002: JL L00,#00 [TRUE] L0003
JL L01,#00 [FALSE] L0003
RET #ffff
L0003: AND L00,#7fff -> L02
AND L01,#7fff -> L03
JG L02,L03 [FALSE] L0004
RTRUE
L0004: RET #ffff
Routine R0109, 1 local
JZ #486c [TRUE] L0001
SET_TEXT_STYLE BOLDFACE
PRINT_PADDR S001
SET_TEXT_STYLE ROMAN
L0001: JZ #4870 [TRUE] L0002
PRINT_PADDR S002
L0002: PRINT "Release "
LOADW #00,#01 -> -(SP)
AND (SP)+,#03ff -> -(SP)
PRINT_NUM (SP)+
PRINT " / Serial number "
STORE L00,#12
L0003: JL L00,#18 [FALSE] L0004
LOADB #00,L00 -> -(SP)
PRINT_CHAR (SP)+
INC L00
JUMP L0003
L0004: PRINT " / Inform v"
LOADB #00,#3c -> Gef
PRINT_CHAR Gef
LOADB #00,#3d -> Gef
PRINT_CHAR Gef
LOADB #00,#3e -> Gef
PRINT_CHAR Gef
LOADB #00,#3f -> Gef
PRINT_CHAR Gef
PRINT " Library "
PRINT_PADDR S004
NEW_LINE
JG G04,#00 [FALSE] L0005
PRINT "Standard interpreter "
DIV G04,#0100 -> -(SP)
PRINT_NUM (SP)+
PRINT "."
MOD G04,#0100 -> -(SP)
PRINT_NUM (SP)+
PRINT "
"
L0005: RTRUE
Routine R0110, 0 locals
Action routine for:
"version"
CALL_1N R0109
PRINT "Interpreter "
LOADB #00,#1e -> -(SP)
PRINT_NUM (SP)+
PRINT " Version "
LOADB #00,#1f -> -(SP)
PRINT_CHAR (SP)+
PRINT " / "
PRINT "Library serial number "
PRINT_PADDR S003
PRINT "
"
RTRUE
Routine R0111, 3 locals
PRINT "** Library error "
PRINT_NUM L00
PRINT " ("
PRINT_NUM L01
PRINT ","
PRINT_NUM L02
PRINT_RET ") **"
Routine R0112, 0 locals
Action routine for:
"places"
CALL_1N R0137
RTRUE
Routine R0113, 0 locals
Action routine for:
"objects"
CALL_1N R0138
RTRUE
Routine R0114, 2 locals
L0001: GET_SIBLING L00 -> L00 [FALSE] L0002
L0002: JZ L00 [FALSE] L0003
RFALSE
L0003: JZ G1a [TRUE] L0004
GET_PROP L00,#19 -> -(SP)
JE (SP)+,G1a [TRUE] L0004
JUMP L0001
L0004: AND G19,#0200 -> -(SP)
JZ (SP)+ [TRUE] L0005
JZ L01 [FALSE] L0005
TEST_ATTR L00,#19 [TRUE] L0005
JUMP L0001
L0005: AND G19,#0800 -> -(SP)
JZ (SP)+ [TRUE] L0007
TEST_ATTR L00,#03 [TRUE] L0006
TEST_ATTR L00,#11 [FALSE] L0007
L0006: JUMP L0001
L0007: RET L00
orphan code fragment:
RTRUE
Routine R0115, 1 local
AND G19,#20 -> -(SP)
JZ (SP)+ [FALSE] RTRUE
AND G19,#10 -> -(SP)
JZ (SP)+ [TRUE] RFALSE
TEST_ATTR L00,#17 [TRUE] RTRUE
TEST_ATTR L00,#14 [TRUE] RTRUE
TEST_ATTR L00,#04 [FALSE] L0001
TEST_ATTR L00,#0e [TRUE] RTRUE
L0001: RFALSE
Routine R0116, 2 locals
GET_CHILD L00 -> -(SP) [FALSE] L0001
L0001: JZ (SP)+ [TRUE] L0002
CALL_2S R0115 (L00) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
L0002: GET_CHILD L01 -> -(SP) [FALSE] L0003
L0003: JZ (SP)+ [TRUE] L0004
CALL_2S R0115 (L01) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
L0004: AND G19,#84 -> -(SP)
JZ (SP)+ [TRUE] L0008
TEST_ATTR L00,#1a [TRUE] L0005
TEST_ATTR L01,#1a [TRUE] RFALSE
L0005: TEST_ATTR L01,#1a [TRUE] L0006
TEST_ATTR L00,#1a [TRUE] RFALSE
L0006: TEST_ATTR L00,#09 [TRUE] L0007
TEST_ATTR L01,#09 [TRUE] RFALSE
L0007: TEST_ATTR L01,#09 [TRUE] L0008
TEST_ATTR L00,#09 [TRUE] RFALSE
L0008: CALL_VS R0034 (L00,L01) -> -(SP)
RET_POPPED
Routine R0117, 2 locals
L0001: GET_CHILD L00 -> -(SP) [FALSE] L0002
L0002: JZ (SP)+ [TRUE] L0008
GET_CHILD L00 -> -(SP) [FALSE] L0003
L0003: GET_PROP (SP)+,#19 -> -(SP)
JE (SP)+,L01 [TRUE] L0005
GET_CHILD L00 -> -(SP) [FALSE] L0004
L0004: INSERT_OBJ (SP)+,"outside"
JUMP L0007
L0005: GET_CHILD L00 -> -(SP) [FALSE] L0006
L0006: INSERT_OBJ (SP)+,"inside"
L0007: JUMP L0001
L0008: GET_CHILD "inside" -> -(SP) [FALSE] L0009
L0009: JZ (SP)+ [TRUE] L0011
GET_CHILD "inside" -> -(SP) [FALSE] L0010
L0010: INSERT_OBJ (SP)+,L00
JUMP L0008
L0011: GET_CHILD "outside" -> -(SP) [FALSE] L0012
L0012: JZ (SP)+ [TRUE] L0014
GET_CHILD "outside" -> -(SP) [FALSE] L0013
L0013: INSERT_OBJ (SP)+,L00
JUMP L0011
L0014: RTRUE
Routine R0118, 4 locals
L0001: STORE L01,L00
JUMP L0003
L0002: GET_SIBLING L01 -> L01 [FALSE] L0003
L0003: JZ L01 [TRUE] L0013
GET_PROP L01,#19 -> L02
JZ L02 [TRUE] L0012
GET_SIBLING L01 -> L01 [FALSE] L0004
L0004: JZ L01 [TRUE] L0006
GET_PROP L01,#19 -> -(SP)
JE (SP)+,L02 [FALSE] L0006
GET_SIBLING L01 -> L01 [FALSE] L0005
L0005: JUMP L0004
L0006: JZ L01 [TRUE] RFALSE
GET_SIBLING L01 -> L03 [FALSE] L0007
L0007: JUMP L0009
L0008: GET_SIBLING L03 -> L03 [FALSE] L0009
L0009: JZ L03 [TRUE] L0012
GET_PROP L03,#19 -> -(SP)
JE (SP)+,L02 [FALSE] L0011
GET_PARENT L00 -> -(SP)
CALL_VN R0117 ((SP)+,L02)
GET_PARENT L00 -> -(SP)
GET_CHILD (SP)+ -> L00 [FALSE] L0010
L0010: JUMP L0001
L0011: JUMP L0008
L0012: JUMP L0002
L0013: RTRUE
Routine R0119, 1 local
JZ L00 [FALSE] L0001
RTRUE
L0001: STORE Gef,L00
JL Gef,#01 [TRUE] L0003
L0002: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0002
L0003: RTRUE
Routine R0120, 3 locals
GET_PARENT L00 -> -(SP)
GET_CHILD (SP)+ -> -(SP) [FALSE] L0001
L0001: JE L00,(SP)+ [FALSE] L0002
CALL_2N R0118 (L00)
GET_PARENT L00 -> -(SP)
GET_CHILD (SP)+ -> L00 [FALSE] L0002
L0002: STORE G19,L01
STORE G1d,#00
CALL_VN R0121 (L00,L02)
RTRUE
Routine R0121, 15 locals
JG L01,#00 [FALSE] L0002
GET_PARENT L00 -> -(SP)
GET_CHILD (SP)+ -> -(SP) [FALSE] L0001
L0001: JE L00,(SP)+ [FALSE] L0002
CALL_2N R0118 (L00)
GET_PARENT L00 -> -(SP)
GET_CHILD (SP)+ -> L00 [FALSE] L0002
L0002: JZ L00 [TRUE] RFALSE
AND G19,#0200 -> -(SP)
JZ (SP)+ [TRUE] L0004
JZ L01 [FALSE] L0004
TEST_ATTR L00,#19 [TRUE] L0004
GET_SIBLING L00 -> L00 [FALSE] L0003
L0003: JUMP L0002
L0004: AND G19,#0800 -> -(SP)
JZ (SP)+ [TRUE] L0007
TEST_ATTR L00,#03 [TRUE] L0005
TEST_ATTR L00,#11 [FALSE] L0007
L0005: GET_SIBLING L00 -> L00 [FALSE] L0006
L0006: JUMP L0002
L0007: JUMP L0008
L0008: ADD #28ce,L02 -> L03
ADD #284e,L02 -> L04
STORE L05,L00
STORE L06,#00
JUMP L0010
L0009: CALL_VS R0114 (L05,L01) -> L05
INC L06
L0010: JZ L05 [TRUE] L0012
ADD L06,L02 -> -(SP)
JL (SP)+,#80 [FALSE] L0012
STOREB L03,L06,#00
GET_PROP L05,#17 -> -(SP)
JZ (SP)+ [TRUE] L0011
INC L07
L0011: JUMP L0009
L0012: AND G19,#0400 -> -(SP)
JZ (SP)+ [TRUE] L0017
JE L06,#01 [FALSE] L0013
TEST_ATTR L00,#1e [TRUE] L0013
PRINT_PADDR S036
JUMP L0014
L0013: PRINT_PADDR S037
L0014: AND G19,#01 -> -(SP)
JZ (SP)+ [TRUE] L0015
PRINT ":
"
JUMP L0016
L0015: PRINT_CHAR ' '
L0016: SUB G19,#0400 -> G19
L0017: ADD L02,L06 -> -(SP)
ADD (SP)+,#01 -> L02
JL L07,#02 [FALSE] L0018
JUMP L0068
L0018: STORE L0b,#01
STORE L05,L00
STORE L07,#00
JUMP L0020
L0019: CALL_VS R0114 (L05,L01) -> L05
INC L07
L0020: JL L07,L06 [FALSE] L0026
LOADB L03,L07 -> -(SP)
JZ (SP)+ [FALSE] L0025
STOREB L03,L07,L0b
STOREB L04,L0b,#01
CALL_VS R0114 (L05,L01) -> L09
ADD L07,#01 -> L0a
JUMP L0022
L0021: CALL_VS R0114 (L09,L01) -> L09
INC L0a
L0022: JZ L09 [TRUE] L0024
JL L0a,L06 [FALSE] L0024
LOADB L03,L0a -> -(SP)
JZ (SP)+ [FALSE] L0023
GET_PROP L05,#17 -> -(SP)
JZ (SP)+ [TRUE] L0023
GET_PROP L09,#17 -> -(SP)
JZ (SP)+ [TRUE] L0023
CALL_VS R0116 (L05,L09) -> -(SP)
JE (SP)+,#01 [FALSE] L0023
LOADB L04,L0b -> -(SP)
ADD (SP)+,#01 -> -(SP)
STOREB L04,L0b,(SP)+
STOREB L03,L0a,L0b
L0023: JUMP L0021
L0024: INC L0b
L0025: JUMP L0019
L0026: DEC L0b
STORE L05,#01
STORE L06,L00
STORE L07,#00
JUMP L0028
L0027: INC L05
INC L0d
L0028: JG L05,L0b [TRUE] L0032
L0029: LOADB L03,L07 -> -(SP)
JE (SP)+,L05 [TRUE] L0030
SUB #00,L05 -> -(SP)
LOADB L03,L07 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0030
INC L07
CALL_VS R0114 (L06,L01) -> L06
JUMP L0029
L0030: LOADB L04,L05 -> L0a
GET_PROP L06,#19 -> -(SP)
JE (SP)+,#00,G1a [TRUE] L0031
GET_PROP L06,#19 -> -(SP)
CALL_2S R0081 ((SP)+) -> -(SP)
JE (SP)+,#02,#03 [FALSE] L0031
GET_PROP L06,#19 -> -(SP)
JE (SP)+,L0e [FALSE] L0031
DEC L0d
L0031: GET_PROP L06,#19 -> L0e
JUMP L0027
L0032: DEC L0d
STORE L05,#01
STORE L06,L00
STORE L07,#00
STORE L0e,#00
JUMP L0034
L0033: INC L05
DEC L0d
L0034: JL L0d,#00 [TRUE] L0067
L0035: LOADB L03,L07 -> -(SP)
JE (SP)+,L05 [TRUE] L0036
SUB #00,L05 -> -(SP)
LOADB L03,L07 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0036
INC L07
CALL_VS R0114 (L06,L01) -> L06
JUMP L0035
L0036: GET_PROP L06,#19 -> -(SP)
JE (SP)+,#00,G1a [TRUE] L0056
GET_PROP L06,#19 -> -(SP)
JE (SP)+,L0e [FALSE] L0037
INC L0d
JUMP L0066
L0037: CALL_VS R0114 (L06,L01) -> L08
JZ L08 [TRUE] L0038
GET_PROP L06,#19 -> -(SP)
GET_PROP L08,#19 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0039
L0038: JUMP L0056
L0039: GET_PROP L06,#19 -> -(SP)
CALL_2S R0081 ((SP)+) -> L08
JE L08,#02,#03 [FALSE] L0056
STORE L0c,L06
STORE G1c,#01
STORE L09,L07
STORE L0a,L05
L0040: JL L0a,L0b [FALSE] L0044
GET_PROP L06,#19 -> -(SP)
GET_PROP L0c,#19 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0044
INC L0a
L0041: LOADB L03,L09 -> -(SP)
JE (SP)+,L0a [TRUE] L0042
SUB #00,L0a -> -(SP)
LOADB L03,L09 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0042
INC L09
CALL_VS R0114 (L0c,L01) -> L0c
JUMP L0041
L0042: GET_PROP L06,#19 -> -(SP)
GET_PROP L0c,#19 -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0043
INC G1c
L0043: JUMP L0040
L0044: JE G1c,#01 [FALSE] L0045
JUMP L0056
L0045: AND G19,#02 -> -(SP)
JZ (SP)+ [TRUE] L0046
ADD L01,G1d -> -(SP)
MUL #02,(SP)+ -> -(SP)
CALL_2N R0119 ((SP)+)
L0046: JE L08,#03 [FALSE] L0050
STORE L0c,#00
STORE L09,#00
L0047: JL L09,G1c [FALSE] L0048
ADD L09,L05 -> -(SP)
LOADB L04,(SP)+ -> -(SP)
ADD L0c,(SP)+ -> L0c
INC L09
JUMP L0047
L0048: CALL_2N R0105 (L0c)
PRINT " "
GET_PROP L06,#19 -> -(SP)
PRINT_PADDR (SP)+
AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0049
PRINT " ("
L0049: AND G19,#02 -> -(SP)
JZ (SP)+ [TRUE] L0050
PRINT ":
"
L0050: STORE L0c,G19
JE L08,#03 [TRUE] L0051
STORE G1e,#01
STORE G31,L06
ADD L01,G1d -> G32
CALL_VS R0084 (L06,#19) -> -(SP)
JE (SP)+,#01 [FALSE] L0051
JUMP L0054
L0051: GET_PROP L06,#19 -> G1a
STORE G1b,L06
INC G1d
CALL_VN R0121 (L06,L01,L02)
DEC G1d
STORE G1a,#00
STORE G1b,#00
JE L08,#03 [FALSE] L0053
AND L0c,#08 -> -(SP)
JZ (SP)+ [TRUE] L0052
PRINT ")"
L0052: JUMP L0054
L0053: STORE G1e,#02
STORE G31,L06
ADD L01,G1d -> G32
CALL_VN R0084 (L06,#19)
L0054: AND L0c,#01 -> -(SP)
JZ (SP)+ [TRUE] L0055
AND G19,#01 -> -(SP)
JZ (SP)+ [FALSE] L0055
NEW_LINE
L0055: STORE G19,L0c
GET_PROP L06,#19 -> L0e
JUMP L0064
L0056: CALL_VS R0122 (L06,L01) -> -(SP)
JE (SP)+,#01 [FALSE] L0057
JUMP L0066
L0057: LOADB L04,L05 -> -(SP)
JE (SP)+,#01 [FALSE] L0061
AND G19,#1000 -> -(SP)
JZ (SP)+ [TRUE] L0058
CALL_2N R0104 (L06)
JUMP L0060
L0058: AND G19,#0100 -> -(SP)
JZ (SP)+ [TRUE] L0059
CALL_2N R0102 (L06)
JUMP L0060
L0059: CALL_2N R0101 (L06)
L0060: JUMP L0063
L0061: AND G19,#0100 -> -(SP)
JZ (SP)+ [TRUE] L0062
LOADB L04,L05 -> -(SP)
CALL_VN R0099 (L06,#01,(SP)+)
L0062: LOADB L04,L05 -> -(SP)
CALL_2N R0105 ((SP)+)
PRINT " "
CALL_VN R0082 (L06,#17,#01)
L0063: CALL_VN R0123 (L06,L01,L02)
L0064: AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0066
JE L0d,#01 [FALSE] L0065
PRINT_PADDR S040
L0065: JG L0d,#01 [FALSE] L0066
PRINT ", "
L0066: JUMP L0033
L0067: RTRUE
L0068: STORE L0b,L06
STORE L05,#01
STORE L06,L00
JUMP L0070
L0069: CALL_VS R0114 (L06,L01) -> L06
INC L05
INC L0d
L0070: JG L05,L0b [TRUE] L0072
GET_PROP L06,#19 -> -(SP)
JE (SP)+,#00,G1a [TRUE] L0071
GET_PROP L06,#19 -> -(SP)
CALL_2S R0081 ((SP)+) -> -(SP)
JE (SP)+,#02,#03 [FALSE] L0071
GET_PROP L06,#19 -> -(SP)
JE (SP)+,L0e [FALSE] L0071
DEC L0d
L0071: GET_PROP L06,#19 -> L0e
JUMP L0069
L0072: STORE L05,#01
STORE L06,L00
STORE L0e,#00
JUMP L0074
L0073: CALL_VS R0114 (L06,L01) -> L06
INC L05
L0074: JG L05,L0d [TRUE] L0095
GET_PROP L06,#19 -> -(SP)
JE (SP)+,#00,G1a [TRUE] L0087
GET_PROP L06,#19 -> -(SP)
JE (SP)+,L0e [FALSE] L0075
DEC L05
JUMP L0094
L0075: CALL_VS R0114 (L06,L01) -> L07
JZ L07 [TRUE] L0076
GET_PROP L06,#19 -> -(SP)
GET_PROP L07,#19 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0077
L0076: JUMP L0087
L0077: GET_PROP L06,#19 -> -(SP)
CALL_2S R0081 ((SP)+) -> L07
JE L07,#02,#03 [FALSE] L0087
AND G19,#02 -> -(SP)
JZ (SP)+ [TRUE] L0078
ADD L01,G1d -> -(SP)
MUL #02,(SP)+ -> -(SP)
CALL_2N R0119 ((SP)+)
L0078: JE L07,#03 [FALSE] L0081
STORE L0c,L06
STORE L09,#00
L0079: CALL_VS R0114 (L0c,L01) -> L0c
INC L09
GET_PROP L06,#19 -> -(SP)
GET_PROP L0c,#19 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0079
CALL_2N R0105 (L09)
PRINT " "
GET_PROP L06,#19 -> -(SP)
PRINT_PADDR (SP)+
AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0080
PRINT " ("
L0080: AND G19,#02 -> -(SP)
JZ (SP)+ [TRUE] L0081
PRINT ":
"
L0081: STORE L0c,G19
JE L07,#03 [TRUE] L0082
STORE G1e,#01
STORE G31,L06
ADD L01,G1d -> G32
CALL_VS R0084 (L06,#19) -> -(SP)
JE (SP)+,#01 [FALSE] L0082
JUMP L0085
L0082: GET_PROP L06,#19 -> G1a
STORE G1b,L06
INC G1d
CALL_VN R0121 (L06,L01,L02)
DEC G1d
STORE G1a,#00
STORE G1b,#00
JE L07,#03 [FALSE] L0084
AND L0c,#08 -> -(SP)
JZ (SP)+ [TRUE] L0083
PRINT ")"
L0083: JUMP L0085
L0084: STORE G1e,#02
STORE G31,L06
ADD L01,G1d -> G32
CALL_VN R0084 (L06,#19)
L0085: AND L0c,#01 -> -(SP)
JZ (SP)+ [TRUE] L0086
AND G19,#01 -> -(SP)
JZ (SP)+ [FALSE] L0086
NEW_LINE
L0086: STORE G19,L0c
GET_PROP L06,#19 -> L0e
JUMP L0092
L0087: CALL_VS R0122 (L06,L01) -> -(SP)
JE (SP)+,#01 [FALSE] L0088
JUMP L0094
L0088: AND G19,#1000 -> -(SP)
JZ (SP)+ [TRUE] L0089
CALL_2N R0104 (L06)
JUMP L0091
L0089: AND G19,#0100 -> -(SP)
JZ (SP)+ [TRUE] L0090
CALL_2N R0102 (L06)
JUMP L0091
L0090: CALL_2N R0101 (L06)
L0091: CALL_VN R0123 (L06,L01,L02)
L0092: AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0094
SUB L0d,#01 -> -(SP)
JE L05,(SP)+ [FALSE] L0093
PRINT_PADDR S040
L0093: SUB L0d,#01 -> -(SP)
JL L05,(SP)+ [FALSE] L0094
PRINT ", "
L0094: JUMP L0073
L0095: RTRUE
Routine R0122, 3 locals
AND G19,#02 -> -(SP)
JZ (SP)+ [TRUE] L0001
ADD L01,G1d -> -(SP)
MUL #02,(SP)+ -> -(SP)
CALL_2N R0119 ((SP)+)
L0001: AND G19,#04 -> -(SP)
JZ (SP)+ [TRUE] L0002
GET_PROP L00,#16 -> -(SP)
JZ (SP)+ [TRUE] L0002
STORE G1e,#01
CALL_VS R0082 (L00,#16,#01) -> L02
JE L02,#01 [FALSE] L0002
AND G19,#01 -> -(SP)
JZ (SP)+ [TRUE] L0002
NEW_LINE
L0002: RET L02
Routine R0123, 8 locals
AND G19,#80 -> -(SP)
JZ (SP)+ [TRUE] L0012
STORE L07,#00
TEST_ATTR L00,#09 [FALSE] L0001
TEST_ATTR G00,#09 [TRUE] L0001
ADD L07,#01 -> L07
L0001: TEST_ATTR L00,#04 [FALSE] L0002
TEST_ATTR L00,#0e [TRUE] L0002
ADD L07,#02 -> L07
L0002: TEST_ATTR L00,#04 [FALSE] L0005
TEST_ATTR L00,#0e [TRUE] L0003
TEST_ATTR L00,#17 [FALSE] L0005
L0003: GET_CHILD L00 -> -(SP) [FALSE] L0004
L0004: JZ (SP)+ [FALSE] L0005
ADD L07,#04 -> L07
L0005: JE L07,#01 [FALSE] L0006
CALL_VN R0236 (#1006,#01,L00)
L0006: JE L07,#02 [FALSE] L0007
CALL_VN R0236 (#1006,#02,L00)
L0007: JE L07,#03 [FALSE] L0008
CALL_VN R0236 (#1006,#03,L00)
L0008: JE L07,#04 [FALSE] L0009
CALL_VN R0236 (#1006,#04,L00)
L0009: JE L07,#05 [FALSE] L0010
CALL_VN R0236 (#1006,#05,L00)
L0010: JE L07,#06 [FALSE] L0011
CALL_VN R0236 (#1006,#06,L00)
L0011: JE L07,#07 [FALSE] L0012
CALL_VN R0236 (#1006,#07,L00)
L0012: AND G19,#04 -> -(SP)
JZ (SP)+ [TRUE] L0030
GET_PROP L00,#16 -> -(SP)
JZ (SP)+ [TRUE] L0014
STORE G1e,#02
CALL_VS R0084 (L00,#16) -> -(SP)
JZ (SP)+ [TRUE] L0014
AND G19,#01 -> -(SP)
JZ (SP)+ [TRUE] L0013
NEW_LINE
L0013: RTRUE
L0014: TEST_ATTR L00,#09 [FALSE] L0015
TEST_ATTR L00,#1a [FALSE] L0015
CALL_VN R0236 (#1006,#08)
STORE L04,#01
JUMP L0017
L0015: TEST_ATTR L00,#09 [FALSE] L0016
CALL_VN R0236 (#1006,#09,L00)
STORE L04,#01
L0016: TEST_ATTR L00,#1a [FALSE] L0017
CALL_VN R0236 (#1006,#0a,L00)
STORE L04,#01
L0017: TEST_ATTR L00,#04 [FALSE] L0029
TEST_ATTR L00,#0f [FALSE] L0026
JE L04,#01 [FALSE] L0018
PRINT_PADDR S040
JUMP L0019
L0018: CALL_VN R0236 (#1006,#0b,L00)
L0019: TEST_ATTR L00,#0e [FALSE] L0023
GET_CHILD L00 -> -(SP) [FALSE] L0020
L0020: JZ (SP)+ [FALSE] L0021
CALL_VN R0236 (#1006,#0d,L00)
JUMP L0022
L0021: CALL_VN R0236 (#1006,#0c,L00)
L0022: JUMP L0025
L0023: TEST_ATTR L00,#0a [FALSE] L0024
TEST_ATTR L00,#0b [FALSE] L0024
CALL_VN R0236 (#1006,#0f,L00)
JUMP L0025
L0024: CALL_VN R0236 (#1006,#0e,L00)
L0025: STORE L04,#01
JUMP L0029
L0026: GET_CHILD L00 -> -(SP) [FALSE] L0027
L0027: JZ (SP)+ [FALSE] L0029
TEST_ATTR L00,#17 [FALSE] L0029
JE L04,#01 [FALSE] L0028
CALL_VN R0236 (#1006,#10,L00)
JUMP L0029
L0028: CALL_VN R0236 (#1006,#11,L00)
L0029: JE L04,#01 [FALSE] L0030
PRINT ")"
L0030: AND G19,#0800 -> -(SP)
JZ (SP)+ [FALSE] L0034
STORE Gef,#00
GET_CHILD L00 -> -(SP) [FALSE] L0032
L0031: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0031
L0032: PULL Gee
STORE L05,Gef
GET_CHILD L00 -> L04 [FALSE] L0033
L0033: JUMP L0038
L0034: STORE L05,#00
GET_CHILD L00 -> -(SP) [FALSE] L0035
L0035: PULL L06
JZ L06 [TRUE] L0038
L0036: TEST_ATTR L06,#03 [TRUE] L0037
TEST_ATTR L06,#11 [TRUE] L0037
INC L05
STORE L04,L06
L0037: GET_SIBLING L06 -> L06 [TRUE] L0036
L0038: AND G19,#20 -> -(SP)
JZ (SP)+ [TRUE] L0040
JG L05,#00 [FALSE] L0040
AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0039
CALL_VN R0236 (#1006,#12,L00)
L0039: STORE L03,#01
L0040: AND G19,#10 -> -(SP)
JZ (SP)+ [TRUE] L0051
JG L05,#00 [FALSE] L0051
TEST_ATTR L00,#14 [FALSE] L0045
AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0044
AND G19,#40 -> -(SP)
JZ (SP)+ [TRUE] L0041
CALL_VN R0236 (#1006,#13,L00)
JUMP L0042
L0041: CALL_VN R0236 (#1006,#14,L00)
L0042: TEST_ATTR L00,#00 [FALSE] L0043
PRINT_PADDR S041
JUMP L0044
L0043: PRINT_PADDR S042
L0044: STORE L03,#01
L0045: TEST_ATTR L00,#04 [FALSE] L0051
TEST_ATTR L00,#0e [TRUE] L0046
TEST_ATTR L00,#17 [FALSE] L0051
L0046: AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0050
AND G19,#40 -> -(SP)
JZ (SP)+ [TRUE] L0047
CALL_VN R0236 (#1006,#15,L00)
JUMP L0048
L0047: CALL_VN R0236 (#1006,#16,L00)
L0048: TEST_ATTR L00,#00 [FALSE] L0049
PRINT_PADDR S041
JUMP L0050
L0049: PRINT_PADDR S042
L0050: STORE L03,#01
L0051: JE L03,#01 [FALSE] L0054
AND G19,#08 -> -(SP)
JZ (SP)+ [TRUE] L0054
JG L05,#01 [TRUE] L0052
TEST_ATTR L04,#1e [FALSE] L0053
L0052: PRINT_PADDR S039
JUMP L0054
L0053: PRINT_PADDR S038
L0054: AND G19,#01 -> -(SP)
JZ (SP)+ [TRUE] L0055
NEW_LINE
L0055: JE L03,#01 [FALSE] L0057
GET_CHILD L00 -> L00 [FALSE] L0056
L0056: ADD L01,#01 -> -(SP)
CALL_VN R0121 (L00,(SP)+,L02)
AND G19,#40 -> -(SP)
JZ (SP)+ [TRUE] L0057
PRINT ")"
L0057: RTRUE
Routine R0124, 5 locals
STORE L00,#01
L0001: GET_PROP_ADDR L00,#27 -> L04
JZ L04 [TRUE] L0008
TEST_ATTR L00,#01 [TRUE] L0008
LOADW L04,#00 -> -(SP)
CALL_2S R0081 ((SP)+) -> -(SP)
JE (SP)+,#02 [FALSE] L0003
LOADW L04,#00 -> -(SP)
CALL_1S (SP)+ -> -(SP)
JZ (SP)+ [TRUE] L0002
INSERT_OBJ L00,G00
L0002: JUMP L0008
L0003: GET_PROP_ADDR L00,#27 -> Gef
JZ Gef [TRUE] L0004
GET_PROP_LEN Gef -> Gef
L0004: STORE L01,Gef
STORE L02,#00
L0005: DIV L01,#02 -> -(SP)
JL L02,(SP)+ [FALSE] L0008
LOADW L04,L02 -> L03
JE L03,G00 [TRUE] L0006
JIN L03,G00 [FALSE] L0007
L0006: INSERT_OBJ L00,G00
L0007: INC L02
JUMP L0005
L0008: INC L00
JG L00,#0062 [TRUE] L0009
JUMP L0001
L0009: RTRUE
Routine R0125, 2 locals
INSERT_OBJ G12,L00
L0001: GET_PARENT L00 -> -(SP)
JZ (SP)+ [TRUE] L0002
GET_PARENT L00 -> L00
JUMP L0001
L0002: STORE G00,L00
STORE G15,G00
CALL_2N R0093 (#01)
JZ L01 [FALSE] L0003
CALL_2N R0075 (#1f)
L0003: JE L01,#01 [FALSE] L0004
CALL_1N R0173
CALL_1N R0174
L0004: JE L01,#02 [FALSE] L0005
CALL_2N R0175 (#01)
L0005: RTRUE
Routine R0126, 1 local
CALL_VN R0075 (#1b,L00)
CALL_2N R0075 (#1f)
RTRUE
Routine R0127, 1 local
L0001: STORE Gec,#29ce
STOREB Gec,#01,#00
CALL_1N R0239
READ Gec,#2a47 -> Gef
LOADW #2a47,#01 -> L00
JE L00,S082 OR "y","yes","yes" [TRUE] RTRUE
JE L00,"n","no","no" [TRUE] RFALSE
CALL_VN R0236 (#01,#01)
PRINT "> "
JUMP L0001
orphan code fragment:
RTRUE
Routine R0128, 0 locals
Action routine for:
"die"
CALL_VN R0236 (#01,#02)
CALL_1S R0127 -> -(SP)
JZ (SP)+ [TRUE] L0001
QUIT
L0001: RTRUE
Routine R0129, 0 locals
Action routine for:
"restart"
CALL_VN R0236 (#02,#01)
CALL_1S R0127 -> -(SP)
JZ (SP)+ [TRUE] L0001
RESTART
CALL_VN R0236 (#02,#02)
L0001: RTRUE
Routine R0130, 0 locals
Action routine for:
"restore"
RESTORE -> Gef
JE Gef,#02 [TRUE] L0001
CALL_VS R0236 (#03,#01) -> -(SP)
RET_POPPED
L0001: CALL_VN R0236 (#03,#02)
RTRUE
Routine R0131, 0 locals
Action routine for:
"save"
SAVE -> Gef
JZ Gef [FALSE] L0001
CALL_VS R0236 (#04,#01) -> -(SP)
RET_POPPED
L0001: CALL_VN R0236 (#04,#02)
RTRUE
Routine R0132, 0 locals
Action routine for:
"verify"
VERIFY [TRUE] L0001
JUMP L0002
L0001: CALL_VS R0236 (#05,#01) -> -(SP)
RET_POPPED
L0002: CALL_VN R0236 (#05,#02)
RTRUE
Routine R0133, 0 locals
Action routine for:
"script"
"script on"
JE G07,#01 [FALSE] L0001
CALL_VS R0236 (#06,#01) -> -(SP)
RET_POPPED
L0001: STORE G07,#01
LOADW #00,#08 -> -(SP)
OR (SP)+,#01 -> -(SP)
STOREW #00,#08,(SP)+
CALL_VN R0236 (#06,#02)
CALL_1N R0110
RTRUE
Routine R0134, 0 locals
Action routine for:
"script off"
"noscript"
JZ G07 [FALSE] L0001
CALL_VS R0236 (#07,#01) -> -(SP)
RET_POPPED
L0001: CALL_VN R0236 (#07,#02)
STORE G07,#00
LOADW #00,#08 -> -(SP)
AND (SP)+,#fffe -> -(SP)
STOREW #00,#08,(SP)+
RTRUE
Routine R0135, 0 locals
Action routine for:
"notify on"
STORE G0f,#01
CALL_2N R0236 (#08)
RTRUE
Routine R0136, 0 locals
Action routine for:
"notify off"
STORE G0f,#00
CALL_2N R0236 (#09)
RTRUE
Routine R0137, 3 locals
CALL_2N R0236 (#0a)
STORE L00,#01
L0001: TEST_ATTR L00,#18 [FALSE] L0002
INC L01
L0002: INC L00
JG L00,#0062 [TRUE] L0003
JUMP L0001
L0003: STORE L00,#01
L0004: TEST_ATTR L00,#18 [FALSE] L0007
CALL_2N R0104 (L00)
INC L02
JE L02,L01 [FALSE] L0005
PRINT_RET "."
L0005: SUB L01,#01 -> -(SP)
JE L02,(SP)+ [FALSE] L0006
PRINT_PADDR S040
JUMP L0007
L0006: PRINT ", "
L0007: INC L00
JG L00,#0062 [TRUE] L0008
JUMP L0004
L0008: RTRUE
Routine R0138, 3 locals
CALL_VN R0236 (#0b,#01)
STORE L00,#01
L0001: TEST_ATTR L00,#0c [FALSE] L0011
STORE L02,#01
CALL_2N R0102 (L00)
GET_PARENT L00 -> L01
JE L01,G12 [FALSE] L0004
TEST_ATTR L00,#1a [FALSE] L0002
CALL_VN R0236 (#0b,#03)
JUMP L0003
L0002: CALL_VN R0236 (#0b,#04)
L0003: JUMP L0010
L0004: TEST_ATTR L01,#00 [FALSE] L0005
CALL_VN R0236 (#0b,#05)
JUMP L0010
L0005: TEST_ATTR L01,#18 [FALSE] L0006
CALL_VN R0236 (#0b,#06,L01)
JUMP L0010
L0006: TEST_ATTR L01,#04 [FALSE] L0007
CALL_VN R0236 (#0b,#08,L01)
JUMP L0010
L0007: TEST_ATTR L01,#14 [FALSE] L0008
CALL_VN R0236 (#0b,#09,L01)
JUMP L0010
L0008: TEST_ATTR L01,#07 [FALSE] L0009
CALL_VN R0236 (#0b,#07,L01)
JUMP L0010
L0009: CALL_VN R0236 (#0b,#0a)
L0010: NEW_LINE
L0011: INC L00
JG L00,#0062 [TRUE] L0012
JUMP L0001
L0012: JZ L02 [FALSE] L0013
CALL_VN R0236 (#0b,#02)
L0013: RTRUE
Routine R0139, 0 locals
Action routine for:
CALL_2N R0236 (#0c)
CALL_1N R0306
RTRUE
Routine R0140, 1 local
LOADB #2e41,L00 -> -(SP)
JZ (SP)+ [FALSE] L0001
STOREB #2e41,L00,#01
LOADB #2e3d,L00 -> -(SP)
ADD G0d,(SP)+ -> G0d
L0001: RTRUE
Routine R0141, 2 locals
PRINT " "
STORE L01,L00
JL L01,#00 [FALSE] L0001
SUB #00,L00 -> L01
MUL L01,#0a -> L01
L0001: JL L01,#0a [FALSE] L0002
PRINT " "
JUMP L0004
L0002: JL L01,#64 [FALSE] L0003
PRINT " "
JUMP L0004
L0003: JL L01,#03e8 [FALSE] L0004
PRINT " "
L0004: PRINT_NUM L00
PRINT " "
RTRUE
Routine R0142, 1 local
Action routine for:
"full"
"full score"
CALL_1N R0139
JZ G0d [TRUE] RFALSE
JZ #01 [FALSE] RFALSE
NEW_LINE
CALL_VN R0236 (#0d,#01)
STORE L00,#00
L0001: JL L00,#01 [FALSE] L0003
LOADB #2e41,L00 -> -(SP)
JE (SP)+,#01 [FALSE] L0002
LOADB #2e3d,L00 -> -(SP)
CALL_2N R0141 ((SP)+)
CALL_2N R0300 (L00)
L0002: INC L00
JUMP L0001
L0003: JZ G11 [TRUE] L0004
CALL_2N R0141 (G11)
CALL_VN R0236 (#0d,#02)
L0004: JZ G10 [TRUE] L0005
CALL_2N R0141 (G10)
CALL_VN R0236 (#0d,#03)
L0005: NEW_LINE
CALL_2N R0141 (G0d)
CALL_VN R0236 (#0d,#04)
RTRUE
Routine R0143, 0 locals
Action routine for:
"i wide"
STORE G1f,#1c
CALL_2N R0075 (#0e)
RTRUE
Routine R0144, 0 locals
Action routine for:
"i tall"
STORE G1f,#17
CALL_2N R0075 (#0e)
RTRUE
Routine R0145, 1 local
Action routine for:
"carry inventory"
"i"
GET_CHILD G12 -> -(SP) [FALSE] L0001
L0001: JZ (SP)+ [FALSE] L0002
CALL_VS R0236 (#0e,#01) -> -(SP)
RET_POPPED
L0002: JZ G1f [FALSE] L0003
CALL_1S R0144 -> -(SP)
RET_POPPED
L0003: CALL_VN R0236 (#0e,#02)
AND G1f,#01 -> -(SP)
JZ (SP)+ [TRUE] L0004
PRINT ":
"
JUMP L0005
L0004: PRINT " "
L0005: GET_CHILD G12 -> -(SP) [FALSE] L0006
L0006: CALL_VN R0120 ((SP)+,G1f,#01)
AND G1f,#08 -> -(SP)
JZ (SP)+ [TRUE] L0007
PRINT ".
"
L0007: GET_CHILD G12 -> -(SP) [FALSE] L0008
L0008: PULL L00
JZ L00 [TRUE] L0010
L0009: CALL_2N R0071 (L00)
GET_SIBLING L00 -> L00 [TRUE] L0009
L0010: CALL_1N R0079
RTRUE
Routine R0146, 4 locals
STORE L02,L00
L0001: JZ L02 [TRUE] L0005
STORE L03,L01
L0002: JZ L03 [TRUE] L0004
JE L03,L02 [FALSE] L0003
RET L02
L0003: GET_PARENT L03 -> L03
JUMP L0002
L0004: GET_PARENT L02 -> L02
JUMP L0001
L0005: RFALSE
Routine R0147, 2 locals
L0001: JZ L01 [TRUE] L0002
JE L00,L01 [TRUE] RTRUE
GET_PARENT L01 -> L01
JUMP L0001
L0002: RFALSE
Routine R0148, 5 locals
CALL_VS R0146 (G12,L00) -> L03
JE G12,L03 [TRUE] L0003
GET_PARENT G12 -> L04
L0001: JE L04,L03 [TRUE] L0003
TEST_ATTR L04,#04 [FALSE] L0002
TEST_ATTR L04,#0e [TRUE] L0002
JZ L01 [FALSE] RTRUE
CALL_VS R0236 (#0f,#09,L04) -> -(SP)
RET_POPPED
L0002: GET_PARENT L04 -> L04
JUMP L0001
L0003: JE L00,L03 [TRUE] L0009
GET_PARENT L00 -> L04
L0004: JE L04,L03 [TRUE] L0009
JZ L02 [TRUE] L0007
TEST_ATTR L04,#04 [TRUE] L0007
TEST_ATTR L04,#14 [TRUE] L0007
TEST_ATTR L04,#00 [FALSE] L0005
JZ L01 [FALSE] RTRUE
CALL_VS R0236 (#0f,#06,L04) -> -(SP)
RET_POPPED
L0005: TEST_ATTR L04,#17 [FALSE] L0006
JZ L01 [FALSE] RTRUE
CALL_VS R0236 (#0f,#07,L04) -> -(SP)
RET_POPPED
L0006: JZ L01 [FALSE] RTRUE
CALL_VS R0236 (#0f,#08,L00) -> -(SP)
RET_POPPED
L0007: TEST_ATTR L04,#04 [FALSE] L0008
TEST_ATTR L04,#0e [TRUE] L0008
JZ L01 [FALSE] RTRUE
CALL_VS R0236 (#0f,#09,L04) -> -(SP)
RET_POPPED
L0008: GET_PARENT L04 -> L04
JUMP L0004
L0009: RFALSE
Routine R0149, 6 locals
JE L00,G12 [FALSE] L0001
CALL_VS R0236 (#0f,#02) -> -(SP)
RET_POPPED
L0001: TEST_ATTR L00,#00 [FALSE] L0002
CALL_VS R0236 (#0f,#03,L00) -> -(SP)
RET_POPPED
L0002: CALL_VS R0146 (G12,L00) -> L01
JZ L01 [FALSE] L0003
CALL_VS R0236 (#0f,#08,L00) -> -(SP)
RET_POPPED
L0003: JE L01,L00 [FALSE] L0004
CALL_VS R0236 (#0f,#04,L00) -> -(SP)
RET_POPPED
L0004: JIN L00,G12 [FALSE] L0005
CALL_VS R0236 (#0f,#05,L00) -> -(SP)
RET_POPPED
L0005: CALL_VS R0148 (L00,#00,#01) -> -(SP)
JZ (SP)+ [TRUE] L0006
RTRUE
L0006: GET_PARENT L00 -> L03
JE L03,L01 [TRUE] L0009
TEST_ATTR L03,#04 [TRUE] L0007
TEST_ATTR L03,#14 [FALSE] L0009
L0007: STORE L02,L03
STORE L05,G27
STORE G27,#1000
CALL_VS R0084 (L03,#04) -> -(SP)
JZ (SP)+ [TRUE] L0008
STORE G27,L05
RTRUE
L0008: STORE G27,L05
L0009: TEST_ATTR L00,#11 [FALSE] L0010
CALL_VS R0236 (#0f,#0a,L00) -> -(SP)
RET_POPPED
L0010: TEST_ATTR L00,#13 [FALSE] L0011
CALL_VS R0236 (#0f,#0b,L00) -> -(SP)
RET_POPPED
L0011: STORE L05,#00
GET_CHILD G12 -> -(SP) [FALSE] L0012
L0012: PULL L04
JZ L04 [TRUE] L0015
L0013: TEST_ATTR L04,#1a [TRUE] L0014
INC L05
L0014: GET_SIBLING L04 -> L04 [TRUE] L0013
L0015: CALL_VS R0083 (G12,#2d) -> -(SP)
JL L05,(SP)+ [TRUE] L0024
JZ #00 [TRUE] L0023
GET_PARENT #00 -> -(SP)
JE (SP)+,G12 [TRUE] L0016
CALL_VS R0236 (#0f,#0c) -> -(SP)
RET_POPPED
L0016: STORE L04,#00
GET_CHILD G12 -> -(SP) [FALSE] L0017
L0017: PULL L05
JZ L05 [TRUE] L0020
L0018: JZ L05 [TRUE] L0019
TEST_ATTR L05,#1a [TRUE] L0019
TEST_ATTR L05,#09 [TRUE] L0019
STORE L04,L05
L0019: GET_SIBLING L05 -> L05 [TRUE] L0018
L0020: JZ L04 [TRUE] L0021
CALL_VN R0236 (#0f,#0d,L04)
STORE G2c,#01
CALL_VN R0075 (#13,L04,#00)
STORE G2c,#00
JIN L04,#00 [FALSE] RTRUE
JUMP L0022
L0021: CALL_VS R0236 (#0f,#0c) -> -(SP)
RET_POPPED
L0022: JUMP L0024
L0023: CALL_VS R0236 (#0f,#0c) -> -(SP)
RET_POPPED
L0024: INSERT_OBJ L00,G12
JZ L02 [TRUE] L0026
STORE L05,G27
STORE G27,#1000
CALL_VS R0084 (L02,#05) -> -(SP)
JZ (SP)+ [TRUE] L0025
STORE G27,L05
RTRUE
L0025: STORE G27,L05
L0026: RFALSE
Routine R0150, 0 locals
Action routine for:
"carry multi"
"get multi"
"pick up multi"
"pick multi up"
"remove multi"
"peel noun"
"peel off noun"
JZ G3f [TRUE] L0001
JIN G2a,G12 [TRUE] L0002
L0001: CALL_2S R0149 (G2a) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
L0002: CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
STORE G3e,G3f
JE G3e,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#0f,#01)
RTRUE
Routine R0151, 1 local
Action routine for:
"carry multiinside from noun"
"carry multiinside off noun"
"get multiinside from noun"
"remove multiinside from noun"
GET_PARENT G2a -> L00
TEST_ATTR L00,#04 [FALSE] L0001
TEST_ATTR L00,#0e [TRUE] L0001
CALL_VS R0236 (#11,#01,G2a) -> -(SP)
RET_POPPED
L0001: JE L00,G2b [TRUE] L0002
CALL_VS R0236 (#11,#02,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR L00,#00 [FALSE] L0003
CALL_VS R0236 (#0f,#06,L00) -> -(SP)
RET_POPPED
L0003: CALL_2S R0149 (G2a) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
STORE G27,#0f
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
STORE G27,#11
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VS R0236 (#11,#03,G2a) -> -(SP)
RET_POPPED
Routine R0152, 0 locals
Action routine for:
"put down multiheld"
"put multiheld down"
"discard multiheld"
GET_PARENT G12 -> -(SP)
JIN G2a,(SP)+ [FALSE] L0001
CALL_VS R0236 (#10,#01,G2a) -> -(SP)
RET_POPPED
L0001: JIN G2a,G12 [TRUE] L0002
CALL_VS R0236 (#10,#02,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#1a [FALSE] L0003
CALL_VN R0236 (#10,#03,G2a)
CALL_VN R0075 (#29,G2a)
TEST_ATTR G2a,#1a [TRUE] RTRUE
L0003: GET_PARENT G12 -> -(SP)
INSERT_OBJ G2a,(SP)+
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VS R0236 (#10,#04,G2a) -> -(SP)
RET_POPPED
Routine R0153, 1 local
Action routine for:
"put multiexcept on / onto noun"
"discard multiexcept on / onto noun"
STORE G2e,#12
JE G2b,#10 [TRUE] L0001
JIN G12,G2b [FALSE] L0002
L0001: CALL_VN R0075 (#10,G2a)
RTRUE
L0002: GET_PARENT G2a -> -(SP)
JE (SP)+,G12 [TRUE] L0003
CALL_VS R0236 (#12,#01,G2a) -> -(SP)
RET_POPPED
L0003: CALL_VS R0146 (G2a,G2b) -> L00
JE L00,G2a [FALSE] L0004
CALL_VS R0236 (#12,#02,G2a) -> -(SP)
RET_POPPED
L0004: CALL_2S R0148 (G2b) -> -(SP)
JZ (SP)+ [TRUE] L0005
RTRUE
L0005: JE G2b,L00 [TRUE] L0007
STORE G27,#1001
CALL_VS R0084 (G2b,#04) -> -(SP)
JZ (SP)+ [TRUE] L0006
STORE G27,#12
RTRUE
L0006: STORE G27,#12
L0007: TEST_ATTR G2b,#14 [TRUE] L0008
CALL_VS R0236 (#12,#03,G2b) -> -(SP)
RET_POPPED
L0008: JE L00,G12 [FALSE] L0009
CALL_VS R0236 (#12,#04) -> -(SP)
RET_POPPED
L0009: TEST_ATTR G2a,#1a [FALSE] L0010
CALL_VN R0236 (#12,#05,G2a)
CALL_VN R0075 (#29,G2a)
TEST_ATTR G2a,#1a [FALSE] L0010
RTRUE
L0010: CALL_VS R0083 (G2b,#2d) -> -(SP)
STORE Gef,#00
GET_CHILD G2b -> -(SP) [FALSE] L0012
L0011: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0011
L0012: PULL Gee
PUSH Gef
JL (SP)+,(SP)+ [TRUE] L0013
CALL_VS R0236 (#12,#06,G2b) -> -(SP)
RET_POPPED
L0013: INSERT_OBJ G2a,G2b
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [FALSE] L0014
RTRUE
L0014: JE G2b,L00 [TRUE] L0016
STORE G27,#1001
CALL_VS R0084 (G2b,#05) -> -(SP)
JZ (SP)+ [TRUE] L0015
STORE G27,#12
RTRUE
L0015: STORE G27,#12
L0016: JE G2c,#01 [FALSE] L0017
RTRUE
L0017: JE G37,#01 [FALSE] L0018
CALL_VS R0236 (#12,#07) -> -(SP)
RET_POPPED
L0018: CALL_VN R0236 (#12,#08,G2a)
RTRUE
Routine R0154, 1 local
Action routine for:
"put multiexcept in / inside / into noun"
"insert multiexcept in / into noun"
"discard multiexcept in / into / down noun"
STORE G2e,#13
JE G2b,#10 [TRUE] L0001
JIN G12,G2b [FALSE] L0002
L0001: CALL_VN R0075 (#10,G2a)
RTRUE
L0002: GET_PARENT G2a -> -(SP)
JE (SP)+,G12 [TRUE] L0003
CALL_VS R0236 (#13,#01,G2a) -> -(SP)
RET_POPPED
L0003: CALL_VS R0146 (G2a,G2b) -> L00
JE L00,G2a [FALSE] L0004
CALL_VS R0236 (#13,#05,G2a) -> -(SP)
RET_POPPED
L0004: CALL_2S R0148 (G2b) -> -(SP)
JZ (SP)+ [TRUE] L0005
RTRUE
L0005: JE G2b,L00 [TRUE] L0007
STORE G27,#1001
CALL_VS R0084 (G2b,#04) -> -(SP)
JZ (SP)+ [TRUE] L0006
STORE G27,#13
RTRUE
L0006: STORE G27,#13
TEST_ATTR G2b,#04 [FALSE] L0007
TEST_ATTR G2b,#0e [TRUE] L0007
CALL_VS R0236 (#13,#03,G2b) -> -(SP)
RET_POPPED
L0007: TEST_ATTR G2b,#04 [TRUE] L0008
CALL_VS R0236 (#13,#02,G2b) -> -(SP)
RET_POPPED
L0008: TEST_ATTR G2a,#1a [FALSE] L0009
CALL_VN R0236 (#13,#06,G2a)
CALL_VN R0075 (#29,G2a)
TEST_ATTR G2a,#1a [FALSE] L0009
RTRUE
L0009: CALL_VS R0083 (G2b,#2d) -> -(SP)
STORE Gef,#00
GET_CHILD G2b -> -(SP) [FALSE] L0011
L0010: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0010
L0011: PULL Gee
PUSH Gef
JL (SP)+,(SP)+ [TRUE] L0012
CALL_VS R0236 (#13,#07,G2b) -> -(SP)
RET_POPPED
L0012: INSERT_OBJ G2a,G2b
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2b,L00 [TRUE] L0014
STORE G27,#1001
CALL_VS R0084 (G2b,#05) -> -(SP)
JZ (SP)+ [TRUE] L0013
STORE G27,#13
RTRUE
L0013: STORE G27,#13
L0014: JE G2c,#01 [TRUE] RTRUE
JE G37,#01 [FALSE] L0015
CALL_VS R0236 (#13,#08,G2a) -> -(SP)
RET_POPPED
L0015: CALL_VN R0236 (#13,#09,G2a)
RTRUE
Routine R0155, 0 locals
Action routine for:
"transfer noun to noun"
"clear noun to noun"
JIN G2a,G12 [TRUE] L0001
CALL_2S R0149 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2b,#04 [FALSE] L0002
CALL_VN R0075 (#13,G2a,G2b)
RTRUE
L0002: TEST_ATTR G2b,#14 [FALSE] L0003
CALL_VN R0075 (#12,G2a,G2b)
RTRUE
L0003: CALL_VN R0075 (#10,G2a)
RTRUE
Routine R0156, 0 locals
Action routine for:
"empty noun"
"empty out noun"
"empty noun out"
STORE G2b,#10
CALL_1N R0157
RTRUE
Routine R0157, 2 locals
Action routine for:
"empty noun to / into / on / onto noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#04 [TRUE] L0002
CALL_VS R0236 (#14,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0e [TRUE] L0003
CALL_VS R0236 (#14,#02,G2a) -> -(SP)
RET_POPPED
L0003: JE G2b,#10 [TRUE] L0005
TEST_ATTR G2b,#04 [TRUE] L0004
CALL_VS R0236 (#14,#01,G2b) -> -(SP)
RET_POPPED
L0004: TEST_ATTR G2b,#0e [TRUE] L0005
CALL_VS R0236 (#14,#02,G2b) -> -(SP)
RET_POPPED
L0005: GET_CHILD G2a -> L00 [FALSE] L0006
L0006: JZ L00 [FALSE] L0007
CALL_VS R0236 (#14,#03,G2a) -> -(SP)
RET_POPPED
L0007: JZ L00 [TRUE] L0009
GET_SIBLING L00 -> L01 [FALSE] L0008
L0008: CALL_2N R0104 (L00)
PRINT ": "
CALL_VN R0075 (#5d,L00,G2b)
STORE L00,L01
JUMP L0007
L0009: RTRUE
Routine R0158, 0 locals
Action routine for:
"feed held to creature"
"feed creature held" REVERSE
"feed over held to creature"
GET_PARENT G2a -> -(SP)
JE (SP)+,G12 [TRUE] L0001
CALL_VS R0236 (#15,#01,G2a) -> -(SP)
RET_POPPED
L0001: JE G2b,G12 [FALSE] L0002
CALL_VS R0236 (#15,#02,G2a) -> -(SP)
RET_POPPED
L0002: CALL_VS R0080 (G2b,#15) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#15,#03,G2b)
RTRUE
Routine R0159, 0 locals
Action routine for:
CALL_VN R0075 (#15,G2b,G2a)
RTRUE
Routine R0160, 0 locals
Action routine for:
"display creature held" REVERSE
"display held to creature"
GET_PARENT G2a -> -(SP)
JE (SP)+,G12 [TRUE] L0001
CALL_VS R0236 (#16,#01,G2a) -> -(SP)
RET_POPPED
L0001: JE G2b,G12 [FALSE] L0002
CALL_VN R0075 (#20,G2a)
RTRUE
L0002: CALL_VS R0080 (G2b,#16) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#16,#02,G2b)
RTRUE
Routine R0161, 0 locals
Action routine for:
CALL_VN R0075 (#16,G2b,G2a)
RTRUE
Routine R0162, 3 locals
Action routine for:
"get in / into / on / onto noun"
"stand on noun"
"go noun"
"go into / in / inside / through noun"
"leave into / in / inside / through noun"
"cross noun"
"lie on top of noun"
"lie on / in / inside noun"
TEST_ATTR G2a,#05 [TRUE] L0001
JIN G2a,"compass" [FALSE] L0002
L0001: CALL_VN R0075 (#1b,G2a)
RTRUE
L0002: JIN G12,G2a [FALSE] L0003
CALL_VS R0236 (#17,#01,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#07 [TRUE] L0004
CALL_VS R0236 (#17,#02,G2a) -> -(SP)
RET_POPPED
L0004: TEST_ATTR G2a,#04 [FALSE] L0005
TEST_ATTR G2a,#0e [TRUE] L0005
CALL_VS R0236 (#17,#03,G2a) -> -(SP)
RET_POPPED
L0005: GET_PARENT G2a -> -(SP)
GET_PARENT G12 -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0015
CALL_VS R0146 (G12,G2a) -> L00
JE L00,G12,#00 [FALSE] L0006
CALL_VS R0236 (#17,#04,G2a) -> -(SP)
RET_POPPED
L0006: JIN G12,L00 [TRUE] L0010
GET_PARENT G12 -> L01
GET_PARENT L01 -> -(SP)
JE (SP)+,L00 [FALSE] L0007
JE G2a,L00 [TRUE] L0008
L0007: CALL_VN R0236 (#17,#06,L01)
STORE L02,G2c
STORE G2c,#01
L0008: CALL_2N R0075 (#19)
STORE G2c,L02
JIN G12,L01 [FALSE] L0009
RTRUE
L0009: JUMP L0006
L0010: JIN G12,G2a [FALSE] L0011
RTRUE
L0011: JIN G2a,L00 [TRUE] L0015
GET_PARENT G2a -> L01
L0012: GET_PARENT L01 -> -(SP)
JE (SP)+,L00 [TRUE] L0013
GET_PARENT L01 -> L01
JUMP L0012
L0013: CALL_VN R0236 (#17,#07,L01)
STORE L02,G2c
STORE G2c,#01
CALL_VN R0075 (#17,L01)
STORE G2c,L02
JIN G12,L01 [TRUE] L0014
RTRUE
L0014: CALL_VN R0075 (#17,G2a)
RTRUE
L0015: INSERT_OBJ G12,G2a
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#17,#05,G2a)
CALL_2N R0169 (G2a)
RTRUE
Routine R0163, 0 locals
Action routine for:
"get off noun"
GET_PARENT G12 -> -(SP)
JE (SP)+,G2a [FALSE] L0001
CALL_2N R0075 (#19)
RTRUE
L0001: CALL_VN R0236 (#18,#01,G2a)
RTRUE
Routine R0164, 1 local
Action routine for:
"get out / off / up"
"stand"
"stand up"
"leave noun"
"exit"
GET_PARENT G12 -> L00
JE L00,G00 [TRUE] L0001
JE G00,#13 [FALSE] L0004
JE L00,G15 [FALSE] L0004
L0001: GET_PROP G00,#12 -> -(SP)
JZ (SP)+ [FALSE] L0002
JE G00,#13 [FALSE] L0003
GET_PROP G15,#12 -> -(SP)
JZ (SP)+ [TRUE] L0003
L0002: CALL_VN R0075 (#1b,#11)
RTRUE
L0003: CALL_VS R0236 (#19,#01) -> -(SP)
RET_POPPED
L0004: TEST_ATTR L00,#04 [FALSE] L0005
TEST_ATTR L00,#0e [TRUE] L0005
CALL_VS R0236 (#19,#02,L00) -> -(SP)
RET_POPPED
L0005: GET_PARENT L00 -> -(SP)
INSERT_OBJ G12,(SP)+
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#19,#03,L00)
CALL_2N R0175 (#01)
RTRUE
Routine R0165, 0 locals
Action routine for:
"go"
"leave"
CALL_2N R0236 (#1a)
RTRUE
Routine R0166, 0 locals
Action routine for:
"cross"
"in"
CALL_VN R0075 (#1b,#12)
RTRUE
Routine R0167, 6 locals
Action routine for:
"go noun = [parse $44f3]"
"leave noun = [parse $44f3]"
STORE L04,#00
GET_PARENT G12 -> L00
JE G00,#13 [TRUE] L0001
JE L00,G00 [FALSE] L0002
L0001: JE G00,#13 [FALSE] L0007
JE L00,G15 [TRUE] L0007
L0002: STORE L01,G00
JE G00,#13 [FALSE] L0003
STORE G00,G15
L0003: CALL_VS R0084 (L00,#04) -> L02
JE L02,#03 [TRUE] L0004
STORE G00,L01
L0004: JE L02,#01 [FALSE] L0005
STORE L04,L00
GET_PARENT L00 -> L00
JUMP L0007
L0005: JZ L02 [FALSE] L0006
CALL_VN R0236 (#1b,#01,L00)
L0006: RTRUE
L0007: GET_PROP G2a,#15 -> L05
CALL_2S R0081 (L05) -> -(SP)
JE (SP)+,#02 [FALSE] L0008
CALL_VS R0084 (G2a,#15) -> L05
L0008: CALL_VS R0317 (L00,L05) -> L01
CALL_2S R0081 (L01) -> L02
JE L02,#03 [FALSE] L0009
PRINT_PADDR L01
NEW_LINE
RFALSE
L0009: JE L02,#02 [FALSE] L0010
CALL_VS R0084 (L00,L05) -> L01
JE L01,#01 [TRUE] RTRUE
L0010: JZ L02 [TRUE] L0011
JZ L01 [FALSE] L0013
L0011: GET_PROP L00,#26 -> -(SP)
JZ (SP)+ [TRUE] L0012
CALL_VN R0082 (L00,#26)
L0012: RFALSE
L0013: TEST_ATTR L01,#05 [FALSE] L0021
TEST_ATTR L01,#03 [FALSE] L0014
CALL_VS R0236 (#1b,#02) -> -(SP)
RET_POPPED
L0014: TEST_ATTR L01,#0e [TRUE] L0017
JE G2a,#0f [FALSE] L0015
CALL_VS R0236 (#1b,#03,L01) -> -(SP)
RET_POPPED
L0015: JE G2a,#10 [FALSE] L0016
CALL_VS R0236 (#1b,#04,L01) -> -(SP)
RET_POPPED
L0016: CALL_VS R0236 (#1b,#05,L01) -> -(SP)
RET_POPPED
L0017: GET_PROP L01,#13 -> -(SP)
CALL_2S R0081 ((SP)+) -> -(SP)
JE (SP)+,#02 [FALSE] L0018
CALL_VS R0084 (L01,#13) -> L01
JUMP L0020
L0018: GET_PROP L01,#13 -> -(SP)
JZ (SP)+ [FALSE] L0019
CALL_VS R0236 (#1b,#06,L01) -> -(SP)
RET_POPPED
L0019: GET_PROP L01,#13 -> L01
L0020: JE L01,#01 [TRUE] RTRUE
L0021: JZ L04 [FALSE] L0022
INSERT_OBJ G12,L01
JUMP L0023
L0022: INSERT_OBJ L04,L01
L0023: CALL_2S R0094 (L01) -> L03
JZ L03 [TRUE] L0024
STORE G00,L01
STORE G14,#01
JUMP L0026
L0024: JE G00,#13 [FALSE] L0025
CALL_1N R0292
JZ G13 [FALSE] RTRUE
L0025: STORE G15,L01
STORE G00,#13
STORE G14,#00
L0026: CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_2N R0175 (#01)
RTRUE
Routine R0168, 3 locals
GET_PARENT G12 -> -(SP)
JE L00,(SP)+ [TRUE] RFALSE
GET_CHILD L00 -> -(SP) [FALSE] L0001
L0001: PULL L01
JZ L01 [TRUE] L0004
L0002: TEST_ATTR L01,#03 [TRUE] L0003
TEST_ATTR L01,#11 [TRUE] L0003
STORE L02,#01
L0003: GET_SIBLING L01 -> L01 [TRUE] L0002
L0004: JZ L02 [TRUE] RFALSE
CALL_VN R0236 (#1f,#04,L00)
RTRUE
Routine R0169, 9 locals
GET_CHILD L00 -> -(SP) [FALSE] L0001
L0001: PULL L03
JZ L03 [TRUE] L0003
L0002: CLEAR_ATTR L03,#19
GET_SIBLING L03 -> L03 [TRUE] L0002
L0003: STORE L05,#00
GET_CHILD L00 -> -(SP) [FALSE] L0004
L0004: PULL L03
JZ L03 [TRUE] L0019
L0005: TEST_ATTR L03,#03 [TRUE] L0018
GET_PARENT G12 -> -(SP)
JE L03,(SP)+ [TRUE] L0018
CALL_2N R0071 (L03)
TEST_ATTR L03,#11 [TRUE] L0016
SET_ATTR L03,#19
INC L05
STORE L04,#1e
STORE L08,#00
TEST_ATTR L03,#05 [TRUE] L0006
TEST_ATTR L03,#04 [FALSE] L0007
L0006: TEST_ATTR L03,#0e [FALSE] L0007
CALL_VS R0321 (L03,#1f) -> -(SP)
JZ (SP)+ [TRUE] L0007
STORE L04,#1f
STORE L08,#01
JUMP L0011
L0007: TEST_ATTR L03,#05 [TRUE] L0008
TEST_ATTR L03,#04 [FALSE] L0009
L0008: TEST_ATTR L03,#0e [TRUE] L0009
CALL_VS R0321 (L03,#20) -> -(SP)
JZ (SP)+ [TRUE] L0009
STORE L04,#20
STORE L08,#01
JUMP L0011
L0009: TEST_ATTR L03,#15 [FALSE] L0010
TEST_ATTR L03,#0d [FALSE] L0010
CALL_VS R0321 (L03,#21) -> -(SP)
JZ (SP)+ [TRUE] L0010
STORE L04,#21
STORE L08,#01
JUMP L0011
L0010: TEST_ATTR L03,#15 [FALSE] L0011
TEST_ATTR L03,#0d [TRUE] L0011
CALL_VS R0321 (L03,#22) -> -(SP)
JZ (SP)+ [TRUE] L0011
STORE L04,#22
STORE L08,#01
L0011: TEST_ATTR L03,#0c [FALSE] L0012
GET_PROP L03,#24 -> -(SP)
JE (SP)+,#ffff [FALSE] L0012
JE L08,#01 [FALSE] L0015
L0012: GET_PROP L03,#24 -> -(SP)
JE (SP)+,#ffff [TRUE] L0013
CALL_VS R0084 (L03,#24) -> -(SP)
JZ (SP)+ [TRUE] L0013
STORE L07,#01
CLEAR_ATTR L03,#19
DEC L05
JUMP L0015
L0013: CALL_VS R0317 (L03,L04) -> L06
JZ L06 [TRUE] L0015
NEW_LINE
CALL_VN R0082 (L03,L04)
STORE L07,#01
CLEAR_ATTR L03,#19
DEC L05
TEST_ATTR L03,#14 [FALSE] L0015
GET_CHILD L03 -> -(SP) [FALSE] L0014
L0014: JZ (SP)+ [TRUE] L0015
CALL_2N R0168 (L03)
L0015: JUMP L0018
L0016: TEST_ATTR L03,#14 [FALSE] L0018
GET_CHILD L03 -> -(SP) [FALSE] L0017
L0017: JZ (SP)+ [TRUE] L0018
CALL_2N R0168 (L03)
L0018: GET_SIBLING L03 -> L03 [TRUE] L0005
L0019: JZ L05 [FALSE] L0020
RFALSE
L0020: JZ L01 [TRUE] L0023
NEW_LINE
JE L07,#01 [FALSE] L0021
STORE L01,L02
L0021: PRINT_PADDR L01
PRINT " "
GET_CHILD L00 -> -(SP) [FALSE] L0022
L0022: CALL_VN R0120 ((SP)+,#0ad8)
RET L05
L0023: JE L07,#01 [FALSE] L0024
CALL_VN R0236 (#1f,#05,L00)
JUMP L0025
L0024: CALL_VN R0236 (#1f,#06,L00)
L0025: RTRUE
Routine R0170, 0 locals
Action routine for:
"brief"
STORE G16,#01
PRINT_PADDR S001
CALL_2N R0236 (#1c)
RTRUE
Routine R0171, 0 locals
Action routine for:
"long"
STORE G16,#02
PRINT_PADDR S001
CALL_2N R0236 (#1d)
RTRUE
Routine R0172, 0 locals
Action routine for:
"short"
STORE G16,#03
PRINT_PADDR S001
CALL_2N R0236 (#1e)
RTRUE
Routine R0173, 1 local
STORE L00,G00
JE L00,G18 [TRUE] L0002
GET_PROP L00,#1e -> -(SP)
JZ (SP)+ [TRUE] L0001
CALL_VN R0082 (L00,#1e)
L0001: CALL_1N R0293
CALL_1N R0124
STORE G18,L00
L0002: RTRUE
Routine R0174, 0 locals
TEST_ATTR G00,#18 [TRUE] L0001
SET_ATTR G00,#18
TEST_ATTR G00,#12 [FALSE] L0001
ADD G0d,#05 -> G0d
ADD G10,#05 -> G10
L0001: RTRUE
Routine R0175, 6 locals
Action routine for:
"l"
GET_PARENT G12 -> -(SP)
JZ (SP)+ [FALSE] L0001
CALL_2S R0111 (#0a) -> -(SP)
RET_POPPED
L0001: JE G00,#13 [FALSE] L0002
STORE L01,#13
JUMP L0006
L0002: STORE L02,#01
GET_PARENT G12 -> L01
L0003: GET_PARENT L01 -> -(SP)
JZ (SP)+ [TRUE] L0005
TEST_ATTR L01,#04 [FALSE] L0004
TEST_ATTR L01,#0e [TRUE] L0004
TEST_ATTR L01,#17 [FALSE] L0005
L0004: GET_PARENT L01 -> L01
INC L02
JUMP L0003
L0005: JE L01,G00 [FALSE] L0006
CALL_1N R0173
L0006: NEW_LINE
SET_TEXT_STYLE BOLDFACE
JZ L02 [FALSE] L0007
CALL_2N R0104 (#13)
JUMP L0009
L0007: JE L01,G00 [TRUE] L0008
CALL_2N R0103 (L01)
JUMP L0009
L0008: CALL_2N R0104 (L01)
L0009: SET_TEXT_STYLE ROMAN
STORE L04,#01
GET_PARENT G12 -> L03
JUMP L0011
L0010: INC L04
GET_PARENT L03 -> L03
L0011: JL L04,L02 [FALSE] L0014
TEST_ATTR L03,#14 [FALSE] L0012
CALL_VN R0236 (#1f,#01,L03)
JUMP L0013
L0012: CALL_VN R0236 (#1f,#02,L03)
L0013: JUMP L0010
L0014: JE G17,#01 [FALSE] L0015
CALL_VN R0236 (#1f,#03,G12)
L0015: NEW_LINE
JL G16,#03 [FALSE] L0019
JE L01,G00 [FALSE] L0019
JE L00,#01 [FALSE] L0016
JE G16,#02 [TRUE] L0016
TEST_ATTR G00,#18 [TRUE] L0019
L0016: GET_PROP G00,#24 -> -(SP)
JE (SP)+,#ffff [TRUE] L0017
CALL_VN R0084 (G00,#24)
JUMP L0019
L0017: GET_PROP G00,#23 -> -(SP)
JZ (SP)+ [FALSE] L0018
CALL_VN R0111 (#0b,G00)
JUMP L0019
L0018: CALL_VN R0082 (G00,#23)
L0019: JZ L02 [FALSE] L0020
CALL_2N R0169 (#13)
JUMP L0025
L0020: STORE L04,L02
L0021: JG L04,#00 [FALSE] L0025
STORE L03,G12
STORE L05,#00
L0022: JL L05,L04 [FALSE] L0023
GET_PARENT L03 -> L03
INC L05
JUMP L0022
L0023: GET_PROP L03,#32 -> -(SP)
JZ (SP)+ [TRUE] L0024
NEW_LINE
CALL_VN R0082 (L03,#32)
L0024: CALL_2N R0169 (L03)
DEC L04
JUMP L0021
L0025: CALL_1N R0294
CALL_1N R0174
STORE G27,#1f
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
RTRUE
Routine R0176, 1 local
Action routine for:
"l at noun"
"check noun"
"read noun"
JE G00,#13 [FALSE] L0001
CALL_VS R0236 (#20,#01) -> -(SP)
RET_POPPED
L0001: GET_PROP G2a,#23 -> L00
JZ L00 [FALSE] L0004
TEST_ATTR G2a,#04 [FALSE] L0002
CALL_VN R0075 (#22,G2a)
RTRUE
L0002: TEST_ATTR G2a,#15 [FALSE] L0003
CALL_VN R0236 (#20,#03,G2a)
RFALSE
L0003: CALL_VS R0236 (#20,#02,G2a) -> -(SP)
RET_POPPED
L0004: CALL_VN R0082 (G2a,#23)
TEST_ATTR G2a,#15 [FALSE] L0005
CALL_VN R0236 (#20,#03,G2a)
L0005: CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
RTRUE
Routine R0177, 0 locals
Action routine for:
"l under noun"
JE G00,#13 [FALSE] L0001
CALL_VS R0236 (#21,#01) -> -(SP)
RET_POPPED
L0001: CALL_VN R0236 (#21,#02)
RTRUE
Routine R0178, 2 locals
Action routine for:
"l inside / in / into / through noun"
"search noun"
JE G00,#13 [FALSE] L0001
CALL_VS R0236 (#22,#01,G2a) -> -(SP)
RET_POPPED
L0001: CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0002
RTRUE
L0002: GET_CHILD G2a -> -(SP) [FALSE] L0003
L0003: PULL L00
JZ L00 [TRUE] L0006
L0004: TEST_ATTR L00,#03 [TRUE] L0005
TEST_ATTR L00,#11 [TRUE] L0005
STORE L01,#01
L0005: GET_SIBLING L00 -> L00 [TRUE] L0004
L0006: TEST_ATTR G2a,#14 [FALSE] L0008
JZ L01 [FALSE] L0007
CALL_VS R0236 (#22,#02,G2a) -> -(SP)
RET_POPPED
L0007: CALL_VS R0236 (#22,#03,G2a) -> -(SP)
RET_POPPED
L0008: TEST_ATTR G2a,#04 [TRUE] L0009
CALL_VS R0236 (#22,#04,G2a) -> -(SP)
RET_POPPED
L0009: TEST_ATTR G2a,#17 [TRUE] L0010
TEST_ATTR G2a,#0e [TRUE] L0010
CALL_VS R0236 (#22,#05,G2a) -> -(SP)
RET_POPPED
L0010: CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
STORE Gef,#00
GET_CHILD G2a -> -(SP) [FALSE] L0012
L0011: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0011
L0012: PULL Gee
STORE L00,Gef
JZ L01 [FALSE] L0013
CALL_VS R0236 (#22,#06,G2a) -> -(SP)
RET_POPPED
L0013: CALL_VN R0236 (#22,#07,G2a)
RTRUE
Routine R0179, 0 locals
Action routine for:
"open noun with held"
"unlock noun with held"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#0a [TRUE] L0002
CALL_VS R0236 (#23,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0b [TRUE] L0003
CALL_VS R0236 (#23,#02,G2a) -> -(SP)
RET_POPPED
L0003: GET_PROP G2a,#14 -> -(SP)
JE (SP)+,G2b [TRUE] L0004
CALL_VS R0236 (#23,#03,G2b) -> -(SP)
RET_POPPED
L0004: CLEAR_ATTR G2a,#0b
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#23,#04,G2a)
RTRUE
Routine R0180, 0 locals
Action routine for:
"lock noun with held"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#0a [TRUE] L0002
CALL_VS R0236 (#24,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0b [FALSE] L0003
CALL_VS R0236 (#24,#02,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#0e [FALSE] L0004
CALL_VS R0236 (#24,#03,G2a) -> -(SP)
RET_POPPED
L0004: GET_PROP G2a,#14 -> -(SP)
JE (SP)+,G2b [TRUE] L0005
CALL_VS R0236 (#24,#04,G2b) -> -(SP)
RET_POPPED
L0005: SET_ATTR G2a,#0b
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#24,#05,G2a)
RTRUE
Routine R0181, 0 locals
Action routine for:
"rotate noun on"
"rotate on noun"
"switch noun"
"switch noun on"
"switch on noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#15 [TRUE] L0002
CALL_VS R0236 (#25,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0d [FALSE] L0003
CALL_VS R0236 (#25,#02,G2a) -> -(SP)
RET_POPPED
L0003: SET_ATTR G2a,#0d
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#25,#03,G2a)
RTRUE
Routine R0182, 0 locals
Action routine for:
"close off noun"
"rotate noun off"
"rotate off noun"
"switch noun off"
"switch off noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#15 [TRUE] L0002
CALL_VS R0236 (#26,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0d [TRUE] L0003
CALL_VS R0236 (#26,#02,G2a) -> -(SP)
RET_POPPED
L0003: CLEAR_ATTR G2a,#0d
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#26,#03,G2a)
RTRUE
Routine R0183, 0 locals
Action routine for:
"open noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#0f [TRUE] L0002
CALL_VS R0236 (#27,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0b [FALSE] L0003
CALL_VS R0236 (#27,#02,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#0e [FALSE] L0004
CALL_VS R0236 (#27,#03,G2a) -> -(SP)
RET_POPPED
L0004: SET_ATTR G2a,#0e
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
TEST_ATTR G2a,#04 [FALSE] L0006
TEST_ATTR G2a,#17 [TRUE] L0006
GET_CHILD G2a -> -(SP) [FALSE] L0005
L0005: JZ (SP)+ [TRUE] L0006
CALL_VS R0147 (G2a,G12) -> -(SP)
JZ (SP)+ [FALSE] L0006
CALL_VS R0236 (#27,#04,G2a) -> -(SP)
RET_POPPED
L0006: CALL_VN R0236 (#27,#05,G2a)
RTRUE
Routine R0184, 0 locals
Action routine for:
"close noun"
"close up noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#0f [TRUE] L0002
CALL_VS R0236 (#28,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#0e [TRUE] L0003
CALL_VS R0236 (#28,#02,G2a) -> -(SP)
RET_POPPED
L0003: CLEAR_ATTR G2a,#0e
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#28,#03,G2a)
RTRUE
Routine R0185, 0 locals
Action routine for:
"carry off ATTRIBUTE(26)"
"remove held"
"disrobe held"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#1a [TRUE] L0002
CALL_VS R0236 (#29,#01,G2a) -> -(SP)
RET_POPPED
L0002: CLEAR_ATTR G2a,#1a
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#29,#02,G2a)
RTRUE
Routine R0186, 0 locals
Action routine for:
"don held"
"put on held"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#02 [TRUE] L0002
CALL_VS R0236 (#2a,#01,G2a) -> -(SP)
RET_POPPED
L0002: GET_PARENT G2a -> -(SP)
JE (SP)+,G12 [TRUE] L0003
CALL_VS R0236 (#2a,#02,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#1a [FALSE] L0004
CALL_VS R0236 (#2a,#03,G2a) -> -(SP)
RET_POPPED
L0004: SET_ATTR G2a,#1a
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#2a,#04,G2a)
RTRUE
Routine R0187, 0 locals
Action routine for:
"eat held"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#06 [TRUE] L0002
CALL_VS R0236 (#2b,#01,G2a) -> -(SP)
RET_POPPED
L0002: REMOVE_OBJ G2a
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
JE G2c,#01 [TRUE] RTRUE
CALL_VN R0236 (#2b,#02,G2a)
RTRUE
Routine R0188, 0 locals
Action routine for:
"y"
CALL_2N R0236 (#2c)
RTRUE
Routine R0189, 0 locals
Action routine for:
"no"
CALL_2N R0236 (#2d)
RTRUE
Routine R0190, 0 locals
Action routine for:
"burn noun"
"burn noun with held"
CALL_VN R0236 (#2e,#01,G2a)
RTRUE
Routine R0191, 0 locals
Action routine for:
"pray"
CALL_VN R0236 (#2f,#01,G2a)
RTRUE
Routine R0192, 0 locals
Action routine for:
"awake"
"awake up"
CALL_VN R0236 (#30,#01,G2a)
RTRUE
Routine R0193, 0 locals
Action routine for:
"awake creature"
"awake creature up"
"awake up creature"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: CALL_VS R0080 (G2a,#31) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#31,#01,G2a)
RTRUE
Routine R0194, 0 locals
Action routine for:
"think"
CALL_VN R0236 (#33,#01,G2a)
RTRUE
Routine R0195, 0 locals
Action routine for:
"smell"
"smell noun"
CALL_VN R0236 (#34,#01,G2a)
RTRUE
Routine R0196, 0 locals
Action routine for:
"hear"
"hear noun"
"hear to noun"
CALL_VN R0236 (#35,#01,G2a)
RTRUE
Routine R0197, 0 locals
Action routine for:
"taste noun"
CALL_VN R0236 (#36,#01,G2a)
RTRUE
Routine R0198, 0 locals
Action routine for:
"dig noun"
"dig noun with held"
CALL_VN R0236 (#38,#01,G2a)
RTRUE
Routine R0199, 0 locals
Action routine for:
"chop noun"
CALL_VN R0236 (#39,#01,G2a)
RTRUE
Routine R0200, 0 locals
Action routine for:
"hop"
CALL_VN R0236 (#3a,#01,G2a)
RTRUE
Routine R0201, 0 locals
Action routine for:
"hop over noun"
CALL_VN R0236 (#3b,#01,G2a)
RTRUE
Routine R0202, 0 locals
Action routine for:
"attach noun"
"attach noun to noun"
CALL_VN R0236 (#3c,#01,G2a)
RTRUE
Routine R0203, 0 locals
Action routine for:
"drink noun"
CALL_VN R0236 (#3d,#01,G2a)
RTRUE
Routine R0204, 0 locals
Action routine for:
"fill noun"
CALL_VN R0236 (#3e,#01,G2a)
RTRUE
Routine R0205, 0 locals
Action routine for:
"sorry"
CALL_VN R0236 (#3f,#01,G2a)
RTRUE
Routine R0206, 0 locals
Action routine for:
"damn"
"damn topic"
CALL_VN R0236 (#40,#01,G2a)
RTRUE
Routine R0207, 0 locals
Action routine for:
"bother"
"bother topic"
CALL_VN R0236 (#41,#01,G2a)
RTRUE
Routine R0208, 0 locals
Action routine for:
"dive"
CALL_VN R0236 (#43,#01,G2a)
RTRUE
Routine R0209, 0 locals
Action routine for:
"swing noun"
"swing on noun"
CALL_VN R0236 (#44,#01,G2a)
RTRUE
Routine R0210, 0 locals
Action routine for:
"blow held"
CALL_VN R0236 (#45,#01,G2a)
RTRUE
Routine R0211, 0 locals
Action routine for:
"clean noun"
CALL_VN R0236 (#46,#01,G2a)
RTRUE
Routine R0212, 0 locals
Action routine for:
"adjust noun"
CALL_VN R0236 (#47,#01,G2a)
RTRUE
Routine R0213, 0 locals
Action routine for:
"adjust noun to special"
CALL_VN R0236 (#48,#01,G2a)
RTRUE
Routine R0214, 0 locals
Action routine for:
"wave"
CALL_VN R0236 (#49,#01,G2a)
RTRUE
Routine R0215, 0 locals
Action routine for:
"buy noun"
CALL_VN R0236 (#54,#01,G2a)
RTRUE
Routine R0216, 0 locals
Action routine for:
"sing"
CALL_VN R0236 (#55,#01,G2a)
RTRUE
Routine R0217, 0 locals
Action routine for:
"climb noun"
"climb up / over noun"
CALL_VN R0236 (#56,#01,G2a)
RTRUE
Routine R0218, 0 locals
Action routine for:
"nap"
CALL_VN R0236 (#58,#01,G2a)
RTRUE
Routine R0219, 0 locals
Action routine for:
"l up topic in noun"
"consult noun about topic"
"consult noun on topic"
"read about topic in noun"
"read topic in noun"
CALL_VN R0236 (#59,#01,G2a)
RTRUE
Routine R0220, 0 locals
Action routine for:
"feel noun"
JE G2a,G12 [FALSE] L0001
CALL_VS R0236 (#37,#03,G2a) -> -(SP)
RET_POPPED
L0001: CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0002
RTRUE
L0002: TEST_ATTR G2a,#00 [FALSE] L0003
CALL_VS R0236 (#37,#01,G2a) -> -(SP)
RET_POPPED
L0003: CALL_VN R0236 (#37,#02,G2a)
RTRUE
Routine R0221, 0 locals
Action routine for:
"wave noun"
GET_PARENT G2a -> -(SP)
JE (SP)+,G12 [TRUE] L0001
CALL_VS R0236 (#4a,#01,G2a) -> -(SP)
RET_POPPED
L0001: CALL_VN R0236 (#4a,#02,G2a)
RTRUE
Routine R0222, 0 locals
Action routine for:
"drag noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#13 [FALSE] L0002
CALL_VS R0236 (#4b,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#11 [FALSE] L0003
CALL_VS R0236 (#4b,#02,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#00 [FALSE] L0004
CALL_VS R0236 (#4b,#04,G2a) -> -(SP)
RET_POPPED
L0004: CALL_VN R0236 (#4b,#03,G2a)
RTRUE
Routine R0223, 0 locals
Action routine for:
"clear noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#13 [FALSE] L0002
CALL_VS R0236 (#4c,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#11 [FALSE] L0003
CALL_VS R0236 (#4c,#02,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#00 [FALSE] L0004
CALL_VS R0236 (#4b,#04,G2a) -> -(SP)
RET_POPPED
L0004: CALL_VN R0236 (#4c,#03,G2a)
RTRUE
Routine R0224, 0 locals
Action routine for:
"rotate noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#13 [FALSE] L0002
CALL_VS R0236 (#4d,#01,G2a) -> -(SP)
RET_POPPED
L0002: TEST_ATTR G2a,#11 [FALSE] L0003
CALL_VS R0236 (#4d,#02,G2a) -> -(SP)
RET_POPPED
L0003: TEST_ATTR G2a,#00 [FALSE] L0004
CALL_VS R0236 (#4b,#04,G2a) -> -(SP)
RET_POPPED
L0004: CALL_VN R0236 (#4d,#03,G2a)
RTRUE
Routine R0225, 0 locals
Action routine for:
"wait"
CALL_1S R0079 -> -(SP)
JE (SP)+,#01 [TRUE] RTRUE
CALL_VN R0236 (#57,#01,G2a)
RTRUE
Routine R0226, 0 locals
Action routine for:
"clear noun noun"
CALL_VN R0236 (#4e,#01,G2a)
RTRUE
Routine R0227, 1 local
GET_PARENT G2b -> -(SP)
JE (SP)+,#06 [TRUE] L0001
CALL_VS R0236 (#4e,#02,G2a) -> -(SP)
RET_POPPED
L0001: JE G2b,#0f,#10 [FALSE] L0002
CALL_VS R0236 (#4e,#03,G2a) -> -(SP)
RET_POPPED
L0002: CALL_1N R0079
STORE L00,G2a
INSERT_OBJ L00,G12
CALL_VN R0075 (#1b,G2b)
JE G00,#13 [FALSE] L0003
INSERT_OBJ L00,G15
JUMP L0004
L0003: INSERT_OBJ L00,G00
L0004: RTRUE
Routine R0228, 0 locals
Action routine for:
"squash noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#00 [FALSE] L0002
CALL_VS R0236 (#4f,#01,G2a) -> -(SP)
RET_POPPED
L0002: CALL_VN R0236 (#4f,#02,G2a)
RTRUE
Routine R0229, 0 locals
Action routine for:
"discard held at / against / on / onto noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: JG G2b,#01 [FALSE] L0003
STORE G27,#1002
CALL_VS R0084 (G2b,#04) -> -(SP)
JZ (SP)+ [TRUE] L0002
STORE G27,#50
RTRUE
L0002: STORE G27,#50
L0003: TEST_ATTR G2b,#00 [TRUE] L0004
CALL_VS R0236 (#50,#01) -> -(SP)
RET_POPPED
L0004: CALL_VS R0080 (G2b,#50) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#50,#02,G2a)
RTRUE
Routine R0230, 0 locals
Action routine for:
"attack noun"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: TEST_ATTR G2a,#00 [FALSE] L0002
CALL_VS R0080 (G2a,#42) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
L0002: CALL_VN R0236 (#42,#01,G2a)
RTRUE
Routine R0231, 0 locals
Action routine for:
"embrace creature"
CALL_2S R0148 (G2a) -> -(SP)
JZ (SP)+ [TRUE] L0001
RTRUE
L0001: CALL_VS R0080 (G2a,#32) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
JE G2a,G12 [FALSE] L0002
CALL_VS R0236 (#37,#03,G2a) -> -(SP)
RET_POPPED
L0002: CALL_VN R0236 (#32,#01,G2a)
RTRUE
Routine R0232, 0 locals
Action routine for:
"answer topic to creature"
CALL_VS R0080 (G2b,#52) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#52,#01,G2a)
RTRUE
Routine R0233, 0 locals
Action routine for:
"tell creature about topic"
JE G2a,G12 [FALSE] L0001
CALL_VS R0236 (#51,#01,G2a) -> -(SP)
RET_POPPED
L0001: CALL_VS R0080 (G2a,#51) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#51,#02,G2a)
RTRUE
Routine R0234, 0 locals
Action routine for:
"ask creature about topic"
CALL_VS R0080 (G2a,#53) -> -(SP)
JZ (SP)+ [FALSE] RFALSE
CALL_VN R0236 (#53,#01,G2a)
RTRUE
Routine R0235, 0 locals
Action routine for:
"ask creature for noun"
JE G2a,G12 [FALSE] L0001
CALL_2N R0075 (#0e)
RTRUE
L0001: CALL_VN R0236 (#1003,#01,G2a)
RTRUE
Routine R0236, 4 locals
STORE L03,Ge9
STORE Ge9,L00
JZ L01 [FALSE] L0001
STORE L01,#01
L0001: CALL_VN R0237 (L01,L02)
STORE Ge9,L03
RTRUE
Routine R0237, 3 locals
STORE L02,G27
STORE G25,L00
STORE G26,L01
STORE G27,Ge9
CALL_VS R0084 (#17,#04) -> -(SP)
JZ (SP)+ [TRUE] L0001
STORE G27,L02
RFALSE
L0001: STORE G27,L02
CALL_VN R0014 (L00,L01)
RTRUE
Routine R0238, 0 locals
STORE G00,#001d
PRINT_RET "
Days of searching, days of endless hacking through the levels of the I-F
archive, but at last your patience is rewarded. A contest! It looks like you've
arrived between events, though,...
"
Routine R0239, 4 locals
SPLIT_WINDOW #01
SET_WINDOW #01
SET_CURSOR #01,#01
SET_TEXT_STYLE REVERSE
LOADB #00,#21 -> L00
SUB L00,#1a -> L01
SUB L00,#0d -> L02
STORE Gef,L00
JL Gef,#01 [TRUE] L0002
L0001: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0001
L0002: SET_CURSOR #01,#02
CALL_2N R0104 (G00)
JIN "rack on the wall",G00 [FALSE] L0010
STORE G01,#00
STORE Gef,#00
GET_CHILD "rack on the wall" -> -(SP) [FALSE] L0004
L0003: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0003
L0004: PULL Gee
STORE G02,Gef
GET_CHILD "rack on the wall" -> -(SP) [FALSE] L0005
L0005: PULL L03
JZ L03 [TRUE] L0008
L0006: CALL_VS R0317 (L03,#004c) -> -(SP)
JZ (SP)+ [TRUE] L0007
INC G01
L0007: GET_SIBLING L03 -> L03 [TRUE] L0006
L0008: JG L00,#4c [FALSE] L0009
SET_CURSOR #01,L01
PRINT "Games Rated: "
PRINT_NUM G01
PRINT "/"
PRINT_NUM G02
L0009: JG L00,#3f [FALSE] L0010
JG L00,#4c [TRUE] L0010
SET_CURSOR #01,L02
PRINT_NUM G01
PRINT "/"
PRINT_NUM G02
L0010: SET_CURSOR #01,#01
SET_TEXT_STYLE ROMAN
SET_WINDOW #00
RTRUE
Routine R0240, 0 locals
SET_TEXT_STYLE BOLDFACE
PRINT """
CALL_VS R0317 (Geb,#005b) -> -(SP)
PRINT_PADDR (SP)+
PRINT """
SET_TEXT_STYLE ROMAN
PRINT " is "
GET_PROP Geb,#25 -> -(SP)
PRINT_PADDR (SP)+
PRINT " "
CALL_VS R0317 (Geb,#004e) -> -(SP)
PRINT_PADDR (SP)+
PRINT " game by "
CALL_VS R0317 (Geb,#005d) -> -(SP)
PRINT_PADDR (SP)+
PRINT ". A short blurb about the game is written on the back.
You have"
CALL_VS R0317 (Geb,#004c) -> -(SP)
JZ (SP)+ [FALSE] L0001
PRINT "n't rated this game yet."
JUMP L0002
L0001: PRINT " given this game a "
CALL_VS R0317 (Geb,#004c) -> -(SP)
CALL_2N R0105 ((SP)+)
PRINT "."
L0002: PRINT_RET ""
Routine R0241, 0 locals
JE Ge9,#59,#5e [FALSE] L0016
SET_TEXT_STYLE BOLDFACE
PRINT """
CALL_VS R0317 (Geb,#005b) -> -(SP)
PRINT_PADDR (SP)+
CALL_VS R0321 (Geb,#005e) -> -(SP)
JZ (SP)+ [TRUE] L0001
PRINT ": "
CALL_VS R0317 (Geb,#005e) -> -(SP)
PRINT_PADDR (SP)+
L0001: PRINT """
SET_TEXT_STYLE ROMAN
PRINT " can be found in the directory:
ftp://ftp.gmd.de/if-archive/games/competition96/"
CALL_VS R0317 (Geb,#005f) -> -(SP)
PRINT_PADDR (SP)+
PRINT "/"
CALL_VS R0317 (Geb,#005f) -> -(SP)
PRINT_PADDR (SP)+
CALL_VS R0321 (Geb,#004f) -> -(SP)
JZ (SP)+ [TRUE] L0002
CALL_VS R0317 (Geb,#004f) -> -(SP)
PRINT_PADDR (SP)+
L0002: CALL_VS R0321 (Geb,#0060) -> -(SP)
JZ (SP)+ [TRUE] L0003
PRINT "
along with the files "
CALL_VS R0317 (Geb,#0060) -> -(SP)
PRINT_PADDR (SP)+
PRINT ", which provide extra information or hints.
"
JUMP L0004
L0003: PRINT "
"
L0004: TEST_ATTR Geb,#1f [FALSE] L0006
PRINT "The game is a standalone DOS game, and should be
playable directly from the DOS prompt. If you are not playing on a DOS-capable
machine, "
CALL_VS R0321 (Geb,#0050) -> -(SP)
JZ (SP)+ [TRUE] L0005
PRINT "you'll need an interpreter.
"
JUMP L0006
L0005: PRINT "you will be unable to play this game.
"
L0006: CALL_VS R0321 (Geb,#0050) -> -(SP)
JZ (SP)+ [TRUE] L0014
PRINT "Interpreters for this "
CALL_VS R0317 (Geb,#004e) -> -(SP)
PRINT_PADDR (SP)+
PRINT " game can be found in:
"
CALL_VS R0317 (Geb,#0050) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
Interpreters exist for:
"
CALL_VS R0321 (Geb,#0051) -> -(SP)
JZ (SP)+ [TRUE] L0007
PRINT "* DOS -- "
CALL_VS R0317 (Geb,#0051) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0007: CALL_VS R0321 (Geb,#0052) -> -(SP)
JZ (SP)+ [TRUE] L0008
PRINT "* Windows -- "
CALL_VS R0317 (Geb,#0052) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0008: CALL_VS R0321 (Geb,#0053) -> -(SP)
JZ (SP)+ [TRUE] L0009
PRINT "* Macintosh -- "
CALL_VS R0317 (Geb,#0053) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0009: CALL_VS R0321 (Geb,#0054) -> -(SP)
JZ (SP)+ [TRUE] L0010
PRINT "* OS/2 -- "
CALL_VS R0317 (Geb,#0054) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0010: CALL_VS R0321 (Geb,#0055) -> -(SP)
JZ (SP)+ [TRUE] L0011
PRINT "* Linux -- "
CALL_VS R0317 (Geb,#0055) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0011: CALL_VS R0321 (Geb,#0056) -> -(SP)
JZ (SP)+ [TRUE] L0012
PRINT "* Unix -- "
CALL_VS R0317 (Geb,#0056) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0012: CALL_VS R0321 (Geb,#0057) -> -(SP)
JZ (SP)+ [TRUE] L0013
PRINT "* Amiga -- "
CALL_VS R0317 (Geb,#0057) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0013: CALL_VS R0321 (Geb,#0058) -> -(SP)
JZ (SP)+ [TRUE] L0014
PRINT "* Other -- "
CALL_VS R0317 (Geb,#0058) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0014: CALL_VS R0321 (Geb,#0061) -> -(SP)
JZ (SP)+ [TRUE] L0015
PRINT "
If you need to contact the author, they can be reached via e-mail at: "
CALL_VS R0317 (Geb,#0061) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
L0015: RTRUE
L0016: RFALSE
Routine R0242, 0 locals
PRINT "You turn around to trudge back down the stairs and back
to real life.
"
JIN "rack on the wall","Competition Headquarters" [FALSE]
L0002
PRINT "Would you like to save this setup before you go? >"
CALL_1S R0127 -> -(SP)
JZ (SP)+ [TRUE] L0001
CALL_2N R0075 (#04)
L0001: PRINT "Okay. Bye!
"
CALL_2N R0075 (#01)
RTRUE
L0002: CALL_2N R0075 (#01)
RTRUE
Routine R0243, 0 locals
JE Ge9,#35 [FALSE] L0001
PRINT_RET "A faint hum of machinery echoes behind the walls"
L0001: JE Ge9,#22 [FALSE] L0005
GET_CHILD G2a -> -(SP) [FALSE] L0002
L0002: JZ (SP)+ [TRUE] L0004
PRINT "Within "
CALL_2N R0102 (G2a)
PRINT " you see:
"
GET_CHILD G2a -> -(SP) [FALSE] L0003
L0003: CALL_VN R0120 ((SP)+,#0803)
RTRUE
L0004: CALL_2N R0103 (G2a)
PRINT_RET " is empty."
L0005: RFALSE
Routine R0244, 0 locals
PRINT "A bin for "
CALL_VS R0317 (Geb,#0059) -> -(SP)
PRINT_PADDR (SP)+
PRINT " games sits here, "
CALL_2S R0257 (Geb) -> -(SP)
JZ (SP)+ [FALSE] L0001
PRINT_RET "empty."
L0001: PRINT "containing "
CALL_2S R0257 (Geb) -> -(SP)
CALL_2N R0105 ((SP)+)
PRINT_RET " games."
Routine R0245, 0 locals
CALL_VS R0317 (Geb,#005a) -> -(SP)
PRINT_PADDR (SP)+
PRINT "
"
CALL_VN R0075 (#22,Geb)
RTRUE
Routine R0246, 0 locals
JE Ge9,#1001 [FALSE] L0001
CALL_VS R0322 (G2a,#18) -> -(SP)
JZ (SP)+ [FALSE] L0001
PRINT_RET "Sorry, you can only put games into the bins."
L0001: RFALSE
Routine R0247, 2 locals
CALL_VS R0318 (Geb,#0062) -> -(SP)
PULL Gef
JE Gef,#01 [FALSE] L0001
STORE L01,"green"
JUMP L0003
L0001: JE Gef,#02 [FALSE] L0002
STORE L01,"yellow"
JUMP L0003
L0002: JE Gef,#03 [FALSE] L0003
STORE L01,"red"
L0003: CALL_1S R0055 -> -(SP)
PULL Gef
JE Gef,"lever","cables","light" [TRUE] L0004
JE Gef,L01 [FALSE] L0005
L0004: INC L00
JUMP L0003
L0005: RET L00
Routine R0248, 0 locals
PRINT "A large lever sticks conspicuously out of one wall,
just above the 'playable games' bin. A light below it glows "
CALL_VS R0318 (Geb,#0062) -> -(SP)
PULL Gef
JE Gef,#01 [FALSE] L0001
PRINT "green"
JUMP L0003
L0001: JE Gef,#02 [FALSE] L0002
PRINT "yellow"
JUMP L0003
L0002: JE Gef,#03 [FALSE] L0003
PRINT "red"
L0003: PRINT ". The lever is "
TEST_ATTR Geb,#0d [FALSE] L0004
PRINT "up"
JUMP L0005
L0004: PRINT "down"
L0005: PRINT_RET "."
Routine R0249, 0 locals
CALL_2S R0257 (#20) -> -(SP)
CALL_2S R0257 (#1f) -> -(SP)
ADD (SP)+,(SP)+ -> -(SP)
JE (SP)+,#1b [FALSE] L0001
RTRUE
L0001: TEST_ATTR Geb,#0d [FALSE] L0002
RET #02
L0002: RET #03
Routine R0250, 0 locals
JE Ge9,#4c,#4b,#4d [FALSE] L0002
TEST_ATTR Geb,#0d [FALSE] L0001
CALL_VN R0075 (#26,Geb)
RTRUE
L0001: CALL_VN R0075 (#25,Geb)
RTRUE
RFALSE
L0002: JE Ge9,#25 [FALSE] L0003
CALL_VS R0318 (Geb,#62) -> -(SP)
JE (SP)+,#01 [TRUE] L0003
PRINT_RET "You are unable to move the lever while there are still
unsorted games here."
L0003: RFALSE
Routine R0251, 0 locals
JE Ge9,#26 [FALSE] L0001
CALL_VN R0253 (#003e,#1f)
REMOVE_OBJ "rack on the wall"
REMOVE_OBJ "two buttons"
PRINT_RET "With a tumble, the rack tips, depositing its contents
into the 'playable games' bin again, before disappearing back into the wall."
L0001: JE Ge9,#25 [FALSE] L0002
INSERT_OBJ "rack on the wall","Competition Headquarters"
INSERT_OBJ "two buttons","Competition Headquarters"
CALL_1N R0252
PRINT_RET "With a whir, the bottom of the 'playable games' bin
opens, and all the games inside disappear into an inky blackness. The bin
re-closes as you hear the games rattle and thump behind the wall within unseen
machinery. Finally, a panel in the wall rotates and a rack emerges, holding the
games in the order in which you're supposed to play them."
L0002: RFALSE
Routine R0252, 5 locals
STORE Gef,#00
GET_CHILD "bin for playable games" -> -(SP) [FALSE] L0002
L0001: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0001
L0002: PULL Gee
STORE L01,Gef
STOREB #2e43,#00,#00
STORE L02,#01
L0003: JL L02,L01 [FALSE] L0004
ADD L02,#01 -> -(SP)
RANDOM (SP)+ -> -(SP)
SUB (SP)+,#01 -> L03
LOADB #2e43,L03 -> -(SP)
STOREB #2e43,L02,(SP)+
STOREB #2e43,L03,L02
INC L02
JUMP L0003
L0004: GET_CHILD "bin for playable games" -> L00 [FALSE] L0005
L0005: STORE L02,#00
L0006: JL L02,L01 [FALSE] L0009
LOADB #2e43,L02 -> -(SP)
ADD (SP)+,#01 -> -(SP)
CALL_VN R0316 (L00,#4d,(SP)+)
CALL_VS R0317 (L00,#5c) -> -(SP)
JG (SP)+,L04 [FALSE] L0007
CALL_VS R0317 (L00,#5c) -> L04
L0007: GET_SIBLING L00 -> L00 [FALSE] L0008
L0008: INC L02
JUMP L0006
L0009: CALL_VN R0316 (#003e,#0063,L04)
CALL_VN R0253 (#1f,#003e)
RTRUE
Routine R0253, 3 locals
GET_CHILD L00 -> L02 [FALSE] L0001
L0001: JZ L02 [TRUE] L0003
INSERT_OBJ L02,L01
GET_CHILD L00 -> L02 [FALSE] L0002
L0002: JUMP L0001
L0003: RTRUE
Routine R0254, 0 locals
PRINT "There is a rack on the wall here with "
CALL_2S R0257 (Geb) -> -(SP)
CALL_2N R0105 ((SP)+)
PRINT_RET " games, all sorted and lined up in their slots, ready
for you to play and rate them. A square button to one side of the rack is
marked 'Save Rating Information', while a round button is marked 'Save All
Information'"
Routine R0255, 3 locals
PRINT "Here is your personalized list of games, and the order
in which you should play them:
"
LOADW #00,#08 -> Gef
OR #02,Gef -> Gef
STOREW #00,#08,Gef
PRINT " Title: "
STORE L00,#00
L0001: CALL_VS R0317 (Geb,#0063) -> -(SP)
SUB (SP)+,#0a -> -(SP)
JL L00,(SP)+ [FALSE] L0002
PRINT " "
INC L00
JUMP L0001
L0002: PRINT "Rating:
"
STORE L00,#01
L0003: STORE Gef,#00
GET_CHILD Geb -> -(SP) [FALSE] L0005
L0004: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0004
L0005: PULL Gee
PUSH Gef
JG L00,(SP)+ [TRUE] L0013
STORE Gef,L00
JL Gef,#01 [TRUE] L0006
JG Gef,#09 [TRUE] L0006
PRINT " "
L0006: PRINT_NUM L00
PRINT ": "
GET_CHILD Geb -> L02 [FALSE] L0007
L0007: CALL_VS R0317 (L02,#4d) -> -(SP)
JE (SP)+,L00 [TRUE] L0009
GET_SIBLING L02 -> L02 [FALSE] L0008
L0008: JUMP L0007
L0009: PRINT """
CALL_VS R0317 (L02,#5b) -> -(SP)
PRINT_PADDR (SP)+
PRINT """
CALL_VS R0317 (L02,#4c) -> -(SP)
JZ (SP)+ [TRUE] L0012
STORE L01,#00
L0010: CALL_VS R0317 (L02,#5c) -> -(SP)
CALL_VS R0317 (Geb,#0063) -> -(SP)
SUB (SP)+,(SP)+ -> -(SP)
ADD (SP)+,#01 -> -(SP)
JL L01,(SP)+ [FALSE] L0011
PRINT " "
INC L01
JUMP L0010
L0011: CALL_VS R0317 (L02,#4c) -> -(SP)
PRINT_NUM (SP)+
L0012: PRINT "
"
INC L00
JUMP L0003
L0013: LOADW #00,#08 -> Gef
AND #fffd,Gef -> Gef
STOREW #00,#08,Gef
RFALSE
Routine R0256, 0 locals
JE Ge9,#4c [FALSE] L0001
CALL_VN R0075 (#4c,#003f)
RTRUE
L0001: JE Ge9,#0f [FALSE] L0002
JIN G2a,Geb [FALSE] L0002
PRINT_RET "The games are already sorted. If you want to manipulate
them, push the lever again."
L0002: RFALSE
Routine R0257, 3 locals
GET_CHILD L00 -> -(SP) [FALSE] L0001
L0001: PULL L02
JZ L02 [TRUE] L0004
L0002: CALL_VS R0322 (L02,#18) -> -(SP)
JZ (SP)+ [TRUE] L0003
INC L01
L0003: GET_SIBLING L02 -> L02 [TRUE] L0002
L0004: RET L01
Routine R0258, 3 locals
L0001: JZ L01 [FALSE] L0006
STORE L01,#01
CALL_1S R0055 -> -(SP)
PULL Gef
JE Gef,"two","button","buttons" [FALSE] L0002
STORE L01,#00
JUMP L0005
L0002: JE Gef,"square" [FALSE] L0004
JZ L02 [FALSE] L0003
STORE L01,#00
STORE L02,#01
L0003: JUMP L0005
L0004: JE Gef,"round","circular" [FALSE] L0005
JZ L02 [FALSE] L0005
STORE L01,#00
STORE L02,#02
L0005: INC L00
JUMP L0001
L0006: PUT_PROP Geb,#29,L02
SUB L00,#01 -> -(SP)
RET_POPPED
Routine R0259, 0 locals
GET_PROP Geb,#29 -> -(SP)
PULL Gef
JE Gef,#00 [FALSE] L0001
PRINT_RET "There are two buttons, a square one marked 'Save Rating
Information', and a round one marked 'Save All Information'."
L0001: JE Gef,#01 [FALSE] L0002
PRINT_RET "The square button is marked 'Save Rating Information'."
L0002: JE Gef,#02 [FALSE] L0003
PRINT_RET "The round button is marked 'Save All Information'."
L0003: RFALSE
Routine R0260, 1 local
JE Ge9,#4c,#25 [FALSE] L0003
GET_PROP Geb,#29 -> -(SP)
JZ (SP)+ [FALSE] L0001
PRINT_RET "You'll have to say which button to press."
L0001: GET_PROP Geb,#29 -> -(SP)
CALL_VN R0261 (L00,(SP)+)
JZ L00 [TRUE] L0002
PRINT_RET "Your rating information has been saved in the file
'rating.txt' (unless you were prompted to change the filename)."
L0002: PRINT_RET "I tried to save your rating information, but was told I
was unsuccessful. (You may wish to check this out for yourself, however,
particularly if you were prompted for a filename.)"
L0003: RFALSE
Routine R0261, 7 locals
PRINT "Saving,...
"
STORE Gef,#00
GET_CHILD "rack on the wall" -> -(SP) [FALSE] L0002
L0001: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0001
L0002: PULL Gee
STORE L06,Gef
STORE L05,#00
L0003: JL L05,L06 [FALSE] L0024
GET_CHILD "rack on the wall" -> L02 [FALSE] L0004
L0004: ADD L05,#01 -> -(SP)
CALL_VS R0317 (L02,#4d) -> -(SP)
JE (SP)+,(SP)+ [TRUE] L0006
JZ L02 [TRUE] L0006
GET_SIBLING L02 -> L02 [FALSE] L0005
L0005: JUMP L0004
L0006: CALL_VS R0317 (L02,#4c) -> -(SP)
JZ (SP)+ [FALSE] L0007
SUB L01,#01 -> -(SP)
JZ (SP)+ [TRUE] L0023
L0007: CALL_VS R0317 (L02,#4c) -> -(SP)
PULL Gef
JE Gef,#00 [FALSE] L0008
STOREB #2e5e,L03,#5f
INC L03
JUMP L0009
L0008: JL Gef,#01 [TRUE] L0009
JG Gef,#09 [TRUE] L0009
STOREB #2e5e,L03,#20
INC L03
L0009: CALL_VS R0317 (L02,#4c) -> -(SP)
PULL Gef
JE Gef,#00 [FALSE] L0010
STOREB #2e5e,L03,#5f
INC L03
JUMP L0020
L0010: JE Gef,#01 [FALSE] L0011
STOREB #2e5e,L03,#31
INC L03
JUMP L0020
L0011: JE Gef,#02 [FALSE] L0012
STOREB #2e5e,L03,#32
INC L03
JUMP L0020
L0012: JE Gef,#03 [FALSE] L0013
STOREB #2e5e,L03,#33
INC L03
JUMP L0020
L0013: JE Gef,#04 [FALSE] L0014
STOREB #2e5e,L03,#34
INC L03
JUMP L0020
L0014: JE Gef,#05 [FALSE] L0015
STOREB #2e5e,L03,#35
INC L03
JUMP L0020
L0015: JE Gef,#06 [FALSE] L0016
STOREB #2e5e,L03,#36
INC L03
JUMP L0020
L0016: JE Gef,#07 [FALSE] L0017
STOREB #2e5e,L03,#37
INC L03
JUMP L0020
L0017: JE Gef,#08 [FALSE] L0018
STOREB #2e5e,L03,#38
INC L03
JUMP L0020
L0018: JE Gef,#09 [FALSE] L0019
STOREB #2e5e,L03,#39
INC L03
JUMP L0020
L0019: JE Gef,#0a [FALSE] L0020
STOREB #2e5e,L03,#31
INC L03
STOREB #2e5e,L03,#30
INC L03
L0020: STOREB #2e5e,L03,#3a
ADD L03,#01 -> -(SP)
STOREB #2e5e,(SP)+,#20
ADD L03,#02 -> L03
CALL_VS R0317 (L02,#5b) -> -(SP)
CALL_VN R0318 ((SP)+,#47,#325e)
STORE L04,#00
L0021: LOADW #325e,#00 -> -(SP)
JL L04,(SP)+ [FALSE] L0022
ADD L04,#02 -> -(SP)
LOADB #325e,(SP)+ -> -(SP)
ADD L03,L04 -> -(SP)
STOREB #2e5e,(SP)+,(SP)+
INC L04
JUMP L0021
L0022: ADD L03,L04 -> L03
STOREB #2e5e,L03,#0d
INC L03
STOREB #2e5e,L03,#0a
INC L03
L0023: INC L05
JUMP L0003
L0024: SAVE #2e5e,L03,#32c2 -> L00
RTRUE
Routine R0262, 0 locals
JE Ge9,#20,#59,#5e [FALSE] L0001
JZ G2b [FALSE] L0001
CALL_VS R0322 (G80,#18) -> -(SP)
JZ (SP)+ [TRUE] L0001
CALL_VN R0075 (#59,G80)
RTRUE
L0001: RFALSE
Routine R0263, 3 locals
JIN "rack on the wall","Competition Headquarters" [TRUE]
L0001
RFALSE
L0001: GET_CHILD "rack on the wall" -> L00 [FALSE] L0002
L0002: STORE Gef,#00
GET_CHILD "rack on the wall" -> -(SP) [FALSE] L0004
L0003: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0003
L0004: PULL Gee
STORE L02,Gef
STORE L01,#01
L0005: JG L01,L02 [TRUE] L0010
GET_CHILD "rack on the wall" -> L00 [FALSE] L0006
L0006: CALL_VS R0317 (L00,#4d) -> -(SP)
JE (SP)+,L01 [TRUE] L0008
GET_SIBLING L00 -> L00 [FALSE] L0007
L0007: JUMP L0006
L0008: CALL_VS R0317 (L00,#4c) -> -(SP)
JZ (SP)+ [FALSE] L0009
RET L00
L0009: INC L01
JUMP L0005
L0010: RFALSE
Routine R0264, 1 local
JE G2a,Geb [FALSE] L0002
CALL_VS R0318 (Geb,#64) -> L00
JZ L00 [FALSE] L0001
PRINT_RET "You can use 'next' as an alias for the first game down
the list which you haven't rated. However, there is no 'next' right now."
L0001: STORE G2a,L00
L0002: JE G2b,Geb [FALSE] L0004
CALL_VS R0318 (Geb,#64) -> L00
JZ L00 [FALSE] L0003
PRINT_RET "You can use 'next' as an alias for the first game down
the list which you haven't rated. However, there is no 'next' right now."
L0003: STORE G2b,L00
L0004: RFALSE
Routine R0265, 0 locals
JE Ge9,#20,#59 [FALSE] L0001
CALL_VN R0318 (#0048,#0067)
RTRUE
L0001: JE Ge9,#0f [FALSE] L0002
PRINT_RET "You remove the paper from the wall."
L0002: JE Ge9,#10 [FALSE] L0003
PRINT_RET "You tack the paper back up on the wall."
L0003: RFALSE
Routine R0266, 0 locals
JE Ge9,#4c,#4b [FALSE] L0001
CALL_VN R0318 (Geb,#0065)
RTRUE
L0001: RFALSE
Routine R0267, 1 local
PRINT "As you push the button, a panel opens in the wall,
revealing a huge laser, aimed at you! Before you can react, a green beam of
light shoots out at you, and you can't move! Suddenly, you find yourself moving
jerkily around the room.
"
JIN "rack on the wall","Competition Headquarters" [FALSE]
L0001
PRINT "
>PULL LEVER
"
CALL_VN R0075 (#4b,#3d)
L0001: PRINT "
>DROP ALL
"
CALL_VN R0253 (G12,#1d)
PRINT "
Done.
"
PRINT "
>GET ALL GAMES FROM EVERYWHERE
"
STORE L00,#01
L0002: CALL_VS R0322 (L00,#18) -> -(SP)
JZ (SP)+ [TRUE] L0003
INSERT_OBJ L00,G12
L0003: INC L00
JG L00,#0062 [TRUE] L0004
JUMP L0002
L0004: PRINT "
Done.
"
PRINT "
>PUT ALL GAMES INTO PLAYABLE BIN
"
CALL_VN R0253 (G12,#1f)
PRINT "
Done.
"
PRINT "
>PULL LEVER
"
CALL_VN R0075 (#4b,#3d)
PRINT "
>PUSH ROUND BUTTON
"
PUT_PROP "two buttons",#29,#02
CALL_VN R0075 (#4c,#3f)
PRINT "
The laser pauses, and seems about to retract. Then it seems to think better of
it, and controls your actions one more time, for good measure."
PRINT "
>SCRIPT ON
"
CALL_2N R0075 (#06)
PRINT "
>EXAMINE RACK
"
CALL_VN R0075 (#20,#3e)
PRINT "
>SCRIPT OFF
"
CALL_2N R0075 (#07)
PRINT_RET "
Just as suddenly as it started, the laser releases you, and disappears back
behind the panel. You are quite dazed, and the sparkles before your eyes seem
to spell out "That's it! You can print out your list and go play the games
now!" before they fade into nothingness."
Routine R0268, 4 locals
LOADB #00,#21 -> G83
ERASE_WINDOW #ffff
SPLIT_WINDOW L00
SET_WINDOW #01
SET_CURSOR #01,#01
SET_TEXT_STYLE REVERSE
STORE Gef,G83
JL Gef,#01 [TRUE] L0002
L0001: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0001
L0002: JZ G04 [FALSE] L0003
SET_CURSOR #01,#01
JUMP L0005
L0003: STOREW #32cd,#00,#80
OUTPUT_STREAM REDIRECT_ENABLE,#32cd
CALL_2N R0104 (Geb)
JE L02,#01 [TRUE] L0004
PRINT " ["
PRINT_NUM L01
PRINT "/"
PRINT_NUM L02
PRINT "]"
L0004: OUTPUT_STREAM #fffd
LOADW #32cd,#00 -> -(SP)
SUB G83,(SP)+ -> -(SP)
DIV (SP)+,#02 -> L03
SET_CURSOR #01,L03
L0005: CALL_2N R0104 (Geb)
JE L02,#01 [TRUE] L0006
PRINT " ["
PRINT_NUM L01
PRINT "/"
PRINT_NUM L02
PRINT "]"
L0006: LOADW #32cd,#00 -> -(SP)
RET_POPPED
Routine R0269, 0 locals
CALL_VN2 R0318 (Geb,#66,#01,#01,#01)
SET_WINDOW #00
LOADW #00,#08 -> Gef
AND #fffd,Gef -> Gef
STOREW #00,#08,Gef
SET_TEXT_STYLE ROMAN
NEW_LINE
NEW_LINE
CALL_VS R0321 (Geb,#23) -> -(SP)
JZ (SP)+ [TRUE] L0001
CALL_VS R0318 (Geb,#23) -> -(SP)
RET_POPPED
L0001: PRINT_RET "[No text written for this option.]
"
Routine R0270, 12 locals
LOADB #00,#21 -> G83
LOADB #00,#20 -> G84
JE G84,#00,#ff [FALSE] L0001
STORE G84,#12
L0001: SUB G84,#07 -> G84
STORE L0a,#00
STORE L02,#01
L0002: JIN L02,Geb [FALSE] L0003
CALL_VS R0322 (L02,#45) -> -(SP)
JZ (SP)+ [TRUE] L0003
INC L0a
L0003: INC L02
JG L02,#0062 [TRUE] L0004
JUMP L0002
L0004: JZ L0a [FALSE] L0005
RET #02
L0005: DIV L0a,G84 -> -(SP)
ADD #01,(SP)+ -> L09
STORE L06,#06
STORE L08,#01
STORE L04,L06
L0006: SUB L08,#01 -> -(SP)
MUL (SP)+,G84 -> L0b
ADD #07,L00 -> -(SP)
CALL_VN2 R0318 (Geb,#66,(SP)+,L08,L09)
SET_CURSOR #02,#01
STORE Gef,G83
JL Gef,#01 [TRUE] L0008
L0007: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0007
L0008: SET_CURSOR #02,#02
PRINT_PADDR S020
SUB G83,#0c -> L01
SET_CURSOR #02,L01
PRINT_PADDR S021
SET_CURSOR #03,#01
STORE Gef,G83
JL Gef,#01 [TRUE] L0010
L0009: PRINT_CHAR ' '
DEC Gef
JZ Gef [FALSE] L0009
L0010: SET_CURSOR #03,#02
PRINT_PADDR S024
SUB G83,#11 -> L01
SET_CURSOR #03,L01
CALL_VS R0322 (Gea,#45) -> -(SP)
JZ (SP)+ [TRUE] L0011
PRINT_PADDR S023
JUMP L0012
L0011: PRINT_PADDR S022
L0012: SET_TEXT_STYLE ROMAN
STORE L00,L06
STORE L01,#00
STORE L02,#01
L0013: JIN L02,Geb [FALSE] L0015
CALL_VS R0322 (L02,#45) -> -(SP)
JZ (SP)+ [TRUE] L0015
JL L01,L0b [TRUE] L0014
ADD L0b,G84 -> -(SP)
JL L01,(SP)+ [FALSE] L0014
SET_CURSOR L00,#06
CALL_2N R0104 (L02)
INC L00
L0014: INC L01
L0015: INC L02
JG L02,#0062 [TRUE] L0016
JUMP L0013
L0016: SUB L00,#01 -> L07
STORE L05,#00
L0017: JE L04,L05 [TRUE] L0019
JZ L05 [TRUE] L0018
SET_CURSOR L05,#04
PRINT " "
L0018: SET_CURSOR L04,#04
PRINT ">"
L0019: STORE L05,L04
READ_CHAR #01 -> L03
JE L03,#4e,#6e,#82 [FALSE] L0023
INC L04
JG L04,L07 [FALSE] L0022
STORE L04,L06
JG L09,#01 [FALSE] L0022
JE L08,L09 [FALSE] L0020
STORE L08,#01
JUMP L0021
L0020: INC L08
L0021: JUMP L0006
L0022: JUMP L0017
L0023: JE L03,#50,#70,#81 [FALSE] L0027
DEC L04
JL L04,L06 [FALSE] L0026
STORE L04,L07
JG L09,#01 [FALSE] L0026
JE L08,#01 [FALSE] L0024
STORE L08,L09
MOD L0a,G84 -> -(SP)
ADD L06,(SP)+ -> -(SP)
SUB (SP)+,#01 -> L04
JUMP L0025
L0024: DEC L08
ADD L06,G84 -> -(SP)
SUB (SP)+,#01 -> L04
L0025: JUMP L0006
L0026: JUMP L0017
L0027: JE L03,#51,#71,#1b [TRUE] L0028
JE L03,#83 [FALSE] L0029
L0028: JUMP L0037
L0029: JE L03,#0a,#0d,#84 [FALSE] L0036
STORE L00,#00
STORE L02,#01
L0030: JIN L02,Geb [FALSE] L0032
CALL_VS R0322 (L02,#45) -> -(SP)
JZ (SP)+ [TRUE] L0032
ADD L0b,L04 -> -(SP)
SUB (SP)+,L06 -> -(SP)
JE L00,(SP)+ [FALSE] L0031
JUMP L0033
L0031: INC L00
L0032: INC L02
JG L02,#0062 [TRUE] L0033
JUMP L0030
L0033: CALL_VS R0318 (L02,#67) -> -(SP)
PULL Gef
JE Gef,#02 [FALSE] L0034
JUMP L0006
L0034: JE Gef,#03 [FALSE] L0035
JUMP L0037
L0035: CALL_VN R0236 (#1007,#35)
READ_CHAR #01 -> L03
JUMP L0006
L0036: JUMP L0017
L0037: CALL_VS R0322 (Gea,#45) -> -(SP)
JZ (SP)+ [TRUE] L0038
RET #02
L0038: LOADW #00,#08 -> Gef
AND #fffd,Gef -> Gef
STOREW #00,#08,Gef
SET_CURSOR #01,#01
ERASE_WINDOW #ffff
SET_WINDOW #00
NEW_LINE
NEW_LINE
NEW_LINE
JZ G13 [FALSE] L0039
CALL_2N R0075 (#1f)
RTRUE
L0039: RET #02
Routine R0271, 0 locals
PRINT_OBJ Geb
PRINT " "
TEST_ATTR Geb,#0d [FALSE] L0001
PRINT "(on)"
JUMP L0002
L0001: PRINT "(off)"
L0002: RTRUE
Routine R0272, 0 locals
TEST_ATTR Geb,#0d [FALSE] L0001
CLEAR_ATTR Geb,#0d
JUMP L0002
L0001: SET_ATTR Geb,#0d
L0002: RET #02
Routine R0273, 0 locals
PRINT "The bins are for sorting the "
CALL_2N R0105 (#1b)
PRINT_RET " games in this contest. They all start out in the
'unsorted' bin, predictably. The 'playable' bin is for games you have the
capacity to play. For example, if you can play this game, chances are you can
play other Inform games. Since you know that, simply 'GET ALL INFORM GAMES FROM
UNSORTED BIN', then 'PUT ALL INFORM GAMES INTO PLAYABLE BIN'. You can also type
commands like 'PUT ALL DOS GAMES IN PLAYABLE BIN'. [Note: It is probably
easiest to type 'GET ALL GAMES' at the beginning, since this is hardcoded in to
give you all the games. 'GET ALL INFORM GAMES' and its ilk will give you the
standard Inform response, which is to deny that they exist. Go bug Graham about
it, not me.] You can examine any individual game to find out if you can play it
or not. Any game you cannot play (due to not having a computer which can play
it, for example), put it in the 'unplayable' bin. Likewise, if you feel you
must exempt yourself from playing a particular game, due to having a prior bias
for or against it (say, you betatested the game, or you have strong feelings
about issues raised in it), you can put it in the 'unplayable' bin as well.
Note that this is a personal choice, and not a requirement."
Routine R0274, 0 locals
PRINT " The Second Annual Text Adventure Authorship
Competition
Administered by whizzard@uclink.berkeley.edu
"He that judges without informing himself to the utmost that he is capable,
cannot acquit himself of judging amiss."
- John Locke, _An Essay Concerning Human Understanding_
-=Introduction=-
"
PRINT " Many years ago, a game was written by two people named
Crowther and Woods. The game was called, variously _Adventure_, and _Collosal
Cave_. It used a text parser that the player could communicate with by typing
in commands, and it formed the foundation of many, if not most, of today's
computer games. The interface may have changed, but deep down, many of today's
gaming conventions are holdovers from that long ago game.
"
PRINT " Last year, a competition was held on the internet.
Enthusiasts of text based games wrote short games and posted them for others to
play and enjoy. The players voted on which game they liked best, and the games
that got the best response had their pick of prizes from a prize pool. Later, 6
of those games were put on Activision's _Classic Text Adventure Masterpieces of
Infocom_ collection, and the authors received a pretty nice payment in return.
"
PRINT_RET " This year, we're going to do it again, and you have
the chance to be a part of this event. However, while last year's competition
had only 12 games entered, this year's has a grand total of 27 entries. That's
more text adventures than you can shake a stick at. To participate, just read
the section on Judging and follow the instructions there."
Routine R0275, 0 locals
PRINT " The judging will be a 'People's Choice Awards' type
deal for the most part. Everyone is able to vote. All you have to do is play
every game that you are able to (you are bound on your honor to play as many as
possible and give each of them an equal chance.) and then rate each game on a
scale of 1 to 10, no decimal places please. You have 2 hours in which to rate
each game. At the end of 2 hours, you should stop and rank the game
immediately. You may continue to play the game after that, but you may not
change your rating of it based upon anything you find after the 2 hours are up.
Please be honest. The site to mail votes to is:
"
PRINT " ct@ecs.ox.ac.uk (Colin Turnbull)
"
PRINT " Let's all give him a big round of applause.
"
PRINT " Please note that this is not my address. If you email
me votes I will trash them without notice and without looking at them, because
I am a big meanie.
"
PRINT " Messages with votes in them should have a subject
header of: VOTE (unless you are entered in the competition or served as a
betatester for one of the entries, in which case it should be MISS
CONGENIALITY) Each game should be rated on a seperate line, and you may submit
multiple votes, but only the latest dated ratings of each game will be kept.
"
PRINT " Votes will begin to be taken on Oct. 20, and must be
in by Nov 30. Shortly thereafter, results will be announced, and prizes will
begin to be distributed to the winners. For those of you who know how much
different this timescale is from the original, please just note that there are
many more entries than were expected, so more time has to be allowed for
everyone to play them. At 2 hours apiece, that's still over 50 hours of play
time total.
"
PRINT " Any game that does not receive at least 10 votes on it
is removed from prize consideration.
"
PRINT " The winner will be the game with the highest average
score. Each winner will have a draft pick to choose a prize of his/her choice
until there are no longer any prizes left. Tied entrants who both select the
same prize will be decided between by a flip of the coin, the loser receiving
his second choice.
"
PRINT_RET " Authors and official betatesters may vote, but must
head their votes with the subject: "MISS CONGENIALITY VOTE" so that the counter
is able to seperate them. These votes will be counted towards an author's best
of show choice. The winner will receive a copy of "The Interactive Writer's
Handbook", donated by me."
Routine R0276, 0 locals
PRINT " -=The Rules=-
"
PRINT " The text adventure you enter must be winnable in under
two hours. Judges will be asked to rate it after playing for that long. Please
note that your game will NOT be disqualified if it exceeds this length, but
judges may not see it in its entirety before rating it.
"
PRINT " The entry may be written in any programming language,
including any of the text adventure creation utilities available (such as TADS,
Inform, AGT, or Alan, to name a few.) If your game is unplayable, then it
won't receive enough votes to be eligable for prizes. (See Judging.)
"
PRINT " This year, do NOT post your entries ahead of time.
Jumping the gun is punishable by disqualification. Instead, you will need to
send me your entries privately, either through e-mail (as a uuencoded file) or
some other arrangement that you will have to work out with me. The entries must
be received by September 30th, 1996. No entries will be accepted after this
date.
"
PRINT " Entries will be sent by me to ftp.gmd.de on October
1st, 1996. Only entries uploaded by me will be eligible.
"
PRINT " If you want your entry to be anonymous, then leave
your name off it and email me that it's your entry. I advise a secret command
that pops up the author and copyright message. Anonymity is not required, and I
hope to be able to continue to do this in the future.
"
PRINT " Speaking of copyright, all games must be entirely your
own creations. You may parody established works, but you may not, for example,
write a game based on Sherlock Holmes. This avoids the entire issue of
copyright and the ethics involved.
"
PRINT " All entries MUST be freeware or public domain. So
don't enter a game you've worked on for 2 years if you don't want to give it
away. No shareware, no donorware, no commercial products, etc. Only clear and
free games.
"
PRINT_RET " Lastly, and this is a NEW rule, somewhat controversial
at that. All entries must include some sort of walkthrough. By this I only mean
that somewhere in the game package there must be explicit directions on how to
play the game from beginning to end, and that this info must be available to
the player from the very start of the game. A walkthrough is fine, as is a hint
system that progresses all the way to blatant spoilers. If you like, you could
even have an NPC take over for the PC if enough time has been spent on a single
puzzle. I don't care how you do it, but do it. Any entry without something of
this nature will be returned to its author, and the author will be asked to
rectify the oversight."
Routine R0277, 0 locals
PRINT " $75.00 cash, donated by Martin Braun.
"Creating Adventure Games on Your Computer", by Tim Hartnell. Copyright 1984,
donated by Matthew Amster-Burton.
The original sketch of the "Path to Fortune" map, donated by Christopher E.
Forman.
A registered copy of "Lost New York" (which includes on-screen hints, a manual,
and some goodies), donated by the author, Neil deMause.
5 copies of the book: "Computer Adventures - The Secret Art", donated by the
author, Gil Williamson.
A PC copy of the Magnetic Scrolls Collection which includes Fish, Corruption
and the Guild of Thieves, donated by Colm McCarthy.
"One-of-a-kind deluxe scraps of paper with stuff written on them"
registered version of "The Light: Shelby's Addendum", signed, with hint sheets
and maps, and a whole mess of scribblings that no-one in their right mind would
ever want, donated by Colm McCarthy.
One free copy of "Avalon", whenever it's done, donated by the author, me, as if
you didn't know.
"
PRINT " Cecilia Barajas of Activision (Author of Zork Nemesis)
has donated the following items:
-A copy of "Lost Treasures of Infocom vols. 1 and 2." (to be awarded as a
matched set.)
-A copy of "Zork Nemesis."
-A Zork Nemesis t-shirt
"
PRINT " Andrew C. Plotkin (Last Year's Inform Winner) offers
the awardee's choice of:
A) Dinner at a (pretty) fine restaurant in the Washington, DC area, with me,
plus hours of fine conversation on the art of interactive fiction or other
topics as desired.
or
B) $20.00 cash (US), plus I'll email you some of my old posts from r.a.i-f.
"
PRINT " Lastly, assuming that:
1) We have at least 20 entries in the competition. (By that, I mean 20 valid,
on-time, non-disqualified entries.)
2) At least 5 of the entries are done by female authors.
"
PRINT_RET " Then Christopher Forman will also award five free
registrations of "Circle of Armageddon", Volume 2 of "The Windhall Chronicles".
Thank you to all prize contributors for helping to make this yeat's contest a
reality."
Routine R0278, 0 locals
PRINT " All games entered in this year's competition are
freeware. You may play any of them without being expected to pay a fee, mail a
postcard, or even blow your nose.
"
PRINT_RET " All games are copyrights of the respective authors. I
make no claims on them, but I do disclaim that any games that violate another's
copyrights are in violation of the rules set down for this competition."
Routine R0279, 0 locals
PRINT " Lastly, for those of you unfamiliar with the online
resources available to text adventure authors, here are some interesting
sources.
"
PRINT " ftp://ftp.gmd.de/if-archive/
Main directory for the interactive fiction (text adventure) archive. It is
mirrored at several sites, but the info escapes me for the moment.
"
PRINT " ftp://ftp.gmd.de/if-archive/programming/
The location of several programs designed to help authors write text
adventures. I recommend TADS, Inform, Hugo, Alan, or AGT, particularly the
first two: TADS and Inform. Please see the relevant directories for further
info.
"
PRINT " ftp://ftp.gmd.de/if-archive/info/authorship-guide.base
The main document for Whizzard's Guide to Text Adventure Authorship. This is
something I wrote to give ideas to prospective authors, mostly dealing with the
non-technical aspects of writing text adventures.
"
PRINT "
ftp://ftp.gmd.de/if-archive/info/Craft.Of.Adventure.txt
A file by Graham Nelson also discussing the less technical aspects of how to
write text adventures. Included is a Player's Bill of Rights that is very
useful.
"
PRINT " ftp://ftp.gmd.de/if-archive/info/Index
A filelist that lists numerous other helpful files for new text adventure
authors to peruse.
"
PRINT " Newsgroups:
"
PRINT " REC.ARTS.INT-FICTION
For the use of text adventure authors in discussing the mechanics and other
important topics of text adventure creation. Important contest announcements
will be posted here.
"
PRINT_RET " REC.GAMES.INT-FICTION
For the players of text adventures to discuss games and hints, and to buy/sell
used text adventures."
Routine R0280, 0 locals
PRINT " Announcing the Third Annual Text Adventure Authorship
Competition
Administered by whizzard@uclink.berkeley.edu
"
PRINT " "Third time's the charm."
-Most Common Programmer Saying, right after "&$%&@%!!"
"
PRINT_RET " Text adventures still exist and thrive on the
Internet. If you enjoyed Zork, Trinity, Corruption, or any of the many other
text based games put out in the 70's and 80's, then I'm sure you'll be pleased
to hear that. You'll be even happier when you find out that there is an annual
competition on the Internet to see who can write the best text adventure, and
that you can enter it, or judge the entries, for free."
Routine R0281, 0 locals
PRINT " This year's competition is a bit different in that the
rules are stricter and better defined. Violaters of any rule will be given a
warning the first time, and disqualified if a second transgression is made.
Sorry for the harsh crackdown, but it seems to be neccessary to ensure a
tranquil and pleasant competition for all.
"
PRINT " 1. Any text adventure you enter must be winnable in
under two hours. The judges are only allowed to play it that long before
quitting and rating it. This is to ensure small games, and encourage authors to
enter who might feel intimidated going up against a huge game.
"
PRINT " 2. All games must be entirely your own creations. You
may parody established works, but you may not, for example, write a game based
on Sherlock Holmes. This avoids the entire issue of copyright and the ethics
involved.
"
PRINT " 3. All entries MUST be freeware or public domain. So
don't enter a game you've worked on for 2 years if you don't want to give it
away. No shareware, no donorware, no commercial products, etc. Only clear and
free games.
"
PRINT " 4. All entries must be previously unreleased at the
opening of voting. If an entry has previously been circulated, it will be
disqualified. If you are unsure whether your game fails to meet this rule,
please ask me.
"
PRINT_RET " 5. Authors of a competition entry may not discuss the
entries in a public Internet forum while the voting is open. This means don't
post about your entry (or anyone else's) on a newsgroup until the deadline for
voting has passed."
Routine R0282, 0 locals
PRINT " 1. It is recommended that you enclose a complete text
walkthrough with your game. With a walkthrough, I can doublecheck your entry to
ensure that it is winnable, and judges can get by hard puzzles to see the rest
of your game.
"
PRINT " 2. The entry may be written in any programming
language, including any of the text adventure creation utilities available
(such as TADS, Inform, AGT, or Alan, to name a few.) If your game is
unplayable, then it won't receive enough votes to be eligable for prizes. (See
Judging.)
"
PRINT " 3. Multiple entries by the same author are fine, so
long as all entries meet all the rules above. Let me just close this with a
caveat emptor. You will likely be better off investing more time in a single
entry rather than trying to finish two.
"
PRINT " 4. To enter this year, you must e-mail me by September
1, 1997, with your intent to enter. I will assign you an author number, and a
telnet-accessed e-mail address that you can receive feedback on your game at
until the voting period has ended.
"
PRINT_RET " 5. You will need to e-mail me your entry privately,
either through e-mail (as a uuencoded file) or some other arrangement that you
will have to work out with me. The entries must be received by September 30th,
1997. No entries will be accepted after this date."
Routine R0283, 0 locals
PRINT " 1. The winner will be the game with the highest
average score. Each winner will have a draft pick to choose a prize of his/her
choice until there are no longer any prizes left. Tied entrants who both select
the same prize will be decided between by a flip of the coin, the loser
receiving his second choice.
"
PRINT " The Prizes So Far Include:
"
PRINT_RET "* $100 cash, donated by Martin Braun
* A cash award of UKP50 (about $70-75 US), donated by Dylan O'Donnell
* Planetfall the novel, donated by Martin Braun
* A copy of Michael Berlyn's novel, The Integrated Man, donated by Jay Goemmer
* Shogun on 3.5" disk for IBM, in shrinkwrap, donated by David Gasior
* A copy of Neil deMause and Joanna Cagan's currently untitled book on
corporate welfare and 8sports, donated by Neil deMause.
Trophies will be awarded for first, second, and third place in addition to the
normal prize picks.
Trophies donated by Kevin Wilson. This is likely to be a fairly expensive
prospect, so donations of money (or trophy-making talents) are needed this year
as well.
If you would like to donate a prize for this year's competition, please contact
me as soon as possible with your prize. The competition is dependent on prize
donations from interested parties to boost interest and the number of
entrants."
Routine R0284, 0 locals
PRINT_RET "At one point, Whizzard considered requiring all entries
to be anonymous. This quickly turned out to be more trouble than it was worth,
so he dropped the idea. However, there was still interest in the option of
anonymity, so some people looked into the prospect of anonymous remailers.
Here's a post from r.a.i-f from Matt Kimball, aka mkimball@xmission.com:
*********************
"With Whizzard's blessing, I have managed to get an anonymous remailer up and
running using the ifcompetition.org domain. Any author desiring to enter this
year's competition anonymously is encouraged to mail mail me with his or her
preferred address at ifcompetition.org. All addresses are limited to the form
'xxxx@ifcompetition.org'.
For a complete description of functionality the remailer, send a message to
'instructions@ifcompetition.org' and you will receive an automated reply
describing the use of the remailer.
Due to load constraints on the machine that the mailer is running on, I will
only be giving accounts for use with the IF competition. If you want a remailer
account for general use, you should look elsewhere. Thank you for
understanding."
*********************
It was later added that even if someone does not want to enter anonymously,
they may still use this remailer for use in the competition."
Routine R0285, 0 locals
Action routine for:
"read noun"
CALL_VN R0075 (#20,G2a)
RTRUE
Routine R0286, 1 local
JE L00,"rate" [FALSE] L0001
PRINT "rate"
RTRUE
L0001: RFALSE
Routine R0287, 0 locals
Parsing routine for:
"go noun = [parse $44f3]"
"leave noun = [parse $44f3]"
JIN G2a,"compass" [TRUE] RTRUE
RFALSE
Routine R0288, 1 local
STORE G3c,G73
L0001: CALL_1S R0056 -> L00
JE L00,#ffff [TRUE] L0002
JE L00,S016 OR "to" [FALSE] L0001
JE G4e,#52 [FALSE] L0001
L0002: DEC G73
SUB G73,G3c -> G3d
JZ G3d [FALSE] L0003
RET #ffff
L0003: JE G4e,#53,#52,#51 [FALSE] L0005
STORE L00,G73
STORE G73,G3c
CALL_1S R0055 -> G3b
JE G3b,"the" [FALSE] L0004
JG G3d,#01 [FALSE] L0004
CALL_1S R0055 -> G3b
L0004: STORE G73,L00
RTRUE
L0005: RFALSE
Routine R0289, 0 locals
RFALSE
Routine R0290, 0 locals
RFALSE
Routine R0291, 0 locals
RFALSE
Routine R0292, 0 locals
RFALSE
Routine R0293, 0 locals
RFALSE
Routine R0294, 0 locals
RFALSE
Routine R0295, 0 locals
RFALSE
Routine R0296, 0 locals
RFALSE
Routine R0297, 0 locals
RFALSE
Routine R0298, 0 locals
RFALSE
Routine R0299, 0 locals
RFALSE
Routine R0300, 1 local
RFALSE
Routine R0301, 1 local
RFALSE
Routine R0302, 1 local
RFALSE
Routine R0303, 1 local
RFALSE
Routine R0304, 2 locals
RFALSE
Routine R0305, 2 locals
RFALSE
Routine R0306, 0 locals
PRINT_RET "."
Routine R0307, 1 local
STORE L00,L00
RET #ffff
Routine R0308, 0 locals
Action routine for:
"l at noun on / of / from noun"
"l at noun noun" REVERSE
"check noun on / of / from noun"
"check noun noun" REVERSE
"read noun on / of / from noun"
"read noun noun" REVERSE
JE G2a,#40 [TRUE] L0001
CALL_VN R0075 (#20,G2a)
RTRUE
L0001: CALL_VS R0322 (G2b,#18) -> -(SP)
JZ (SP)+ [FALSE] L0002
PRINT_RET "There is no blurb on that!"
L0002: CALL_VN R0075 (#59,G2b)
RTRUE
Routine R0309, 0 locals
Action routine for:
"play"
"play noun"
PRINT_RET "Unfortunately, this interpreter does not allow you to
play another game within this one. To play the game, exit and run the one you
want to play. For more information about how this works, read the blurb on the
game you wish to play, or simply 'READ <game>'"
Routine R0310, 2 locals
Action routine for:
"score noun"
"score noun number"
"feed number to noun" REVERSE
"feed number noun" REVERSE
"rate noun"
"rate noun number"
CALL_VS R0322 (G2a,#18) -> -(SP)
JZ (SP)+ [FALSE] L0001
PRINT_RET "You can only rate the games!"
L0001: JIN "rack on the wall","Competition Headquarters" [TRUE]
L0002
PRINT_RET "Please sort the games you can play before you try to
rate them. Simply put all games you can play in the 'playable' bin, the games
you can't into the 'unplayable', and pull the lever."
L0002: JIN G2a,"rack on the wall" [TRUE] L0003
PRINT_RET "I thought you said you couldn't play that game! If you
can, you'll have to pull the lever again and re-sort the games."
L0003: GET_CHILD "rack on the wall" -> L00 [FALSE] L0004
L0004: JZ L00 [TRUE] L0007
CALL_VS R0317 (G2a,#4d) -> -(SP)
CALL_VS R0317 (L00,#4d) -> -(SP)
JL (SP)+,(SP)+ [FALSE] L0005
CALL_VS R0317 (L00,#4c) -> -(SP)
JZ (SP)+ [FALSE] L0005
STORE L01,#01
L0005: GET_SIBLING L00 -> L00 [FALSE] L0006
L0006: JUMP L0004
L0007: STORE Gef,G2b
JE Gef,#00 [FALSE] L0008
PRINT_RET "To rate a game, try 'rate game #', where '#' is a
number from one to ten"
L0008: JL Gef,#01 [TRUE] L0011
JG Gef,#0a [TRUE] L0011
CALL_VN R0316 (G2a,#4c,G2b)
JE L01,#01 [FALSE] L0009
PRINT "Rating the games out of order, huh? I'll let you get
away with it, but you better have a good reason,...
Anyway, ""
JUMP L0010
L0009: PRINT "Okay, ""
L0010: CALL_VS R0317 (G2a,#5b) -> -(SP)
PRINT_PADDR (SP)+
PRINT "" now has a rating of "
CALL_VS R0317 (G2a,#4c) -> -(SP)
CALL_2N R0105 ((SP)+)
PRINT_RET "."
L0011: PRINT_RET "You can only give a rating between one and ten."
orphan code fragment:
RTRUE
Routine R0311, 1 local
Action routine for:
"rate number number"
JIN "rack on the wall","Competition Headquarters" [TRUE]
L0001
PRINT_RET "Please sort the games you can play before you try to
rate them. Simply put all games you can play in the 'playable' bin, the games
you can't into the 'unplayable', and pull the lever."
L0001: JZ G2a [FALSE] L0002
PRINT_RET "The list of games starts with '1'"
L0002: STORE L00,#01
L0003: CALL_VS R0322 (L00,#18) -> -(SP)
JZ (SP)+ [TRUE] L0004
CALL_VS R0317 (L00,#4d) -> -(SP)
JE (SP)+,G2a [FALSE] L0004
STORE G2a,L00
CALL_VN R0075 (#66,G2a,G2b)
RTRUE
L0004: INC L00
JG L00,#0062 [TRUE] L0005
JUMP L0003
L0005: PRINT_RET "There is no game with that ranking right now."
Routine R0312, 3 locals
Action routine for:
"score"
PRINT "Isn't it fun to rate the games instead of having them
rate you? Anyway, you "
JIN "rack on the wall",G00 [TRUE] L0001
PRINT_RET "don't have any games available to rate yet."
L0001: GET_CHILD "rack on the wall" -> -(SP) [FALSE] L0002
L0002: PULL L00
JZ L00 [TRUE] L0005
L0003: INC L02
CALL_VS R0317 (L00,#4c) -> -(SP)
JZ (SP)+ [TRUE] L0004
INC L01
L0004: GET_SIBLING L00 -> L00 [TRUE] L0003
L0005: PRINT "have rated "
CALL_2N R0105 (L01)
PRINT " out of a total of "
CALL_2N R0105 (L02)
PRINT_RET " games available to you."
Routine R0313, 0 locals
Action routine for:
"aargh"
CALL_VN R0318 (#48,#67)
RTRUE
Routine R0314, 1 local
Action routine for:
"carry all"
"carry all games"
"carry all games from everywher"
"get all"
"get all games"
"get all games from everywher"
"pick up all"
"pick up all games"
"pick up all games from everywher"
STORE L00,#01
L0001: CALL_VS R0322 (L00,#18) -> -(SP)
JZ (SP)+ [TRUE] L0002
CALL_2N R0102 (L00)
PRINT ": "
CALL_VN R0075 (#0f,L00)
L0002: INC L00
JG L00,#0062 [TRUE] L0003
JUMP L0001
L0003: RTRUE
Routine R0315, 5 locals
AND L00,#c000 -> -(SP)
JZ (SP)+ [TRUE] L0004
AND L00,#ff -> -(SP)
LOADW #1633,(SP)+ -> L03
CALL_2N R0104 (L03)
PRINT "::"
AND L00,#8000 -> -(SP)
JZ (SP)+ [FALSE] L0001
AND L00,#3f00 -> -(SP)
DIV (SP)+,#0100 -> L00
JUMP L0004
L0001: AND L00,#7f00 -> -(SP)
DIV (SP)+,#0100 -> L00
GET_PROP L03,#03 -> L04
L0002: LOADW L04,#00 -> -(SP)
JZ (SP)+ [TRUE] L0003
JG L00,#00 [FALSE] L0003
LOADB L04,#02 -> -(SP)
ADD L04,(SP)+ -> -(SP)
ADD (SP)+,#03 -> L04
DEC L00
JUMP L0002
L0003: LOADW L04,#00 -> -(SP)
AND (SP)+,#7fff -> L00
L0004: STORE L01,#1651
LOADW L01,#00 -> L02
JG L00,#00 [FALSE] L0005
JL L00,L02 [FALSE] L0005
LOADW L01,L00 -> -(SP)
JZ (SP)+ [FALSE] L0006
L0005: PRINT "<number "
PRINT_NUM L00
PRINT ">"
JUMP L0007
L0006: LOADW L01,L00 -> -(SP)
PRINT_PADDR (SP)+
L0007: RTRUE
Routine R0316, 4 locals
CALL_VS R0319 (L00,L01) -> L03
JZ L03 [FALSE] L0001
CALL_VN R0324 (S241,L00,L01)
RTRUE
L0001: STOREW L03,#00,L02
RTRUE
Routine R0317, 3 locals
CALL_VS R0319 (L00,L01) -> L02
JZ L02 [FALSE] L0002
JL L01,#01 [TRUE] L0001
JL L01,#40 [FALSE] L0001
GET_PROP L00,L01 -> -(SP)
RET_POPPED
L0001: CALL_VN R0324 (S242,L00,L01)
RTRUE
L0002: LOADW L02,#00 -> -(SP)
RET_POPPED
Routine R0318, 15 locals
JL L00,#01 [TRUE] L0001
SUB #0161,#ff -> -(SP)
JG L00,(SP)+ [FALSE] L0007
L0001: CALL_2S R0325 (L00) -> -(SP)
PULL Gef
JE Gef,#02 [FALSE] L0003
JE L01,#45 [FALSE] L0002
STORE L0b,Gea
STORE Gea,Geb
STORE Geb,L00
STORE Ge9,G27
CALL_VS2 L00 (L02,L03,L04,L05,L06,L07) -> L08
STORE Geb,Gea
STORE Gea,L0b
RET L08
L0002: JUMP L0014
L0003: JE Gef,#03 [FALSE] L0006
JE L01,#46 [FALSE] L0004
PRINT_PADDR L00
RTRUE
L0004: JE L01,#47 [FALSE] L0005
OUTPUT_STREAM REDIRECT_ENABLE,L02
PRINT_PADDR L00
OUTPUT_STREAM #fffd
LOADW L02,#00 -> -(SP)
RET_POPPED
L0005: JUMP L0014
L0006: JUMP L0014
L0007: CHECK_ARG_COUNT #03 [FALSE] L0008
INC L09
CHECK_ARG_COUNT #04 [FALSE] L0008
INC L09
CHECK_ARG_COUNT #05 [FALSE] L0008
INC L09
CHECK_ARG_COUNT #06 [FALSE] L0008
INC L09
CHECK_ARG_COUNT #07 [FALSE] L0008
INC L09
CHECK_ARG_COUNT #08 [FALSE] L0008
INC L09
L0008: JL L01,#00 [TRUE] L0012
JL L01,#40 [FALSE] L0012
GET_PROP_ADDR L00,L01 -> L08
JZ L08 [FALSE] L0009
STORE L0d,#02
JUMP L0011
L0009: GET_PROP_ADDR L00,L01 -> Gef
JZ Gef [TRUE] L0010
GET_PROP_LEN Gef -> Gef
L0010: STORE L0d,Gef
L0011: JUMP L0016
L0012: JL L01,#40 [TRUE] L0013
JL L01,#45 [FALSE] L0013
JIN L00,"Class" [FALSE] L0013
CALL_VS2 R0329 (L00,L01,L02,L03) -> -(SP)
RET_POPPED
L0013: CALL_VS R0319 (L00,L01) -> L08
JZ L08 [FALSE] L0015
L0014: CALL_VN R0324 (S243,L00,L01)
RTRUE
L0015: SUB L08,#01 -> -(SP)
LOADB #00,(SP)+ -> L0d
L0016: MUL #02,L0e -> -(SP)
JL (SP)+,L0d [FALSE] L0030
LOADW L08,L0e -> -(SP)
JE (SP)+,#ffff [TRUE] RFALSE
LOADW L08,L0e -> -(SP)
CALL_2S R0325 ((SP)+) -> -(SP)
PULL Gef
JE Gef,#02 [FALSE] L0027
STORE L0b,Gea
STORE Gea,Geb
STORE Geb,L00
STORE L0c,Ge9
JE L01,#06 [FALSE] L0017
STORE Ge9,G2d
JUMP L0018
L0017: STORE Ge9,G27
L0018: STORE Gef,L09
JE Gef,#00 [FALSE] L0019
LOADW L08,L0e -> -(SP)
CALL_1S (SP)+ -> L0a
JUMP L0025
L0019: JE Gef,#01 [FALSE] L0020
LOADW L08,L0e -> -(SP)
CALL_2S (SP)+ (L02) -> L0a
JUMP L0025
L0020: JE Gef,#02 [FALSE] L0021
LOADW L08,L0e -> -(SP)
CALL_VS (SP)+ (L02,L03) -> L0a
JUMP L0025
L0021: JE Gef,#03 [FALSE] L0022
LOADW L08,L0e -> -(SP)
CALL_VS (SP)+ (L02,L03,L04) -> L0a
JUMP L0025
L0022: JE Gef,#04 [FALSE] L0023
LOADW L08,L0e -> -(SP)
CALL_VS2 (SP)+ (L02,L03,L04,L05) -> L0a
JUMP L0025
L0023: JE Gef,#05 [FALSE] L0024
LOADW L08,L0e -> -(SP)
CALL_VS2 (SP)+ (L02,L03,L04,L05,L06) -> L0a
JUMP L0025
L0024: JE Gef,#06 [FALSE] L0025
LOADW L08,L0e -> -(SP)
CALL_VS2 (SP)+ (L02,L03,L04,L05,L06,L07) -> L0a
L0025: STORE Geb,Gea
STORE Gea,L0b
STORE Ge9,L0c
JZ L0a [TRUE] L0026
RET L0a
L0026: JUMP L0029
L0027: JE Gef,#03 [FALSE] L0028
LOADW L08,L0e -> -(SP)
PRINT_PADDR (SP)+
NEW_LINE
RTRUE
L0028: LOADW L08,L0e -> -(SP)
RET_POPPED
L0029: INC L0e
JUMP L0016
L0030: RFALSE
Routine R0319, 5 locals
JL L01,#40 [FALSE] L0001
JG L01,#00 [FALSE] L0001
GET_PROP_ADDR L00,L01 -> -(SP)
RET_POPPED
L0001: AND L01,#8000 -> -(SP)
JZ (SP)+ [TRUE] L0004
AND L01,#ff -> -(SP)
LOADW #1633,(SP)+ -> L04
GET_PROP_ADDR L04,#03 -> -(SP)
JZ (SP)+ [TRUE] RFALSE
CALL_VS R0322 (L00,L04) -> -(SP)
JZ (SP)+ [TRUE] RFALSE
AND L01,#7f00 -> -(SP)
DIV (SP)+,#0100 -> L01
GET_PROP L04,#03 -> L02
L0002: JG L01,#00 [FALSE] L0003
DEC L01
LOADB L02,#02 -> -(SP)
ADD L02,(SP)+ -> -(SP)
ADD (SP)+,#03 -> L02
JUMP L0002
L0003: ADD L02,#03 -> -(SP)
RET_POPPED
L0004: AND L01,#4000 -> -(SP)
JZ (SP)+ [TRUE] L0006
AND L01,#ff -> -(SP)
LOADW #1633,(SP)+ -> L04
AND L01,#3f00 -> -(SP)
DIV (SP)+,#0100 -> L01
CALL_VS R0322 (L00,L04) -> -(SP)
JZ (SP)+ [TRUE] RFALSE
LOADW #00,#05 -> L02
JE L04,#02 [FALSE] L0005
MUL #02,L01 -> -(SP)
ADD L02,(SP)+ -> -(SP)
SUB (SP)+,#02 -> -(SP)
RET_POPPED
L0005: MUL L04,#0e -> -(SP)
ADD L02,#7c -> -(SP)
ADD (SP)+,(SP)+ -> -(SP)
DIV (SP)+,#02 -> -(SP)
LOADW #00,(SP)+ -> L02
LOADB #00,L02 -> -(SP)
MUL #02,(SP)+ -> -(SP)
ADD L02,(SP)+ -> -(SP)
ADD (SP)+,#01 -> -(SP)
CALL_VS R0328 ((SP)+,#ffff) -> -(SP)
ADD (SP)+,#06 -> L02
CALL_VS R0328 (L02,L01) -> -(SP)
RET_POPPED
L0006: GET_PROP_ADDR L00,#03 -> -(SP)
JZ (SP)+ [TRUE] RFALSE
JIN L00,"Class" [FALSE] L0007
JL L01,#40 [TRUE] RFALSE
JL L01,#48 [FALSE] RFALSE
L0007: JE Geb,L00 [FALSE] L0008
OR L01,#8000 -> L03
L0008: GET_PROP L00,#03 -> L02
L0009: LOADW L02,#00 -> -(SP)
JZ (SP)+ [TRUE] L0011
LOADW L02,#00 -> -(SP)
JE (SP)+,L01,L03 [FALSE] L0010
ADD L02,#03 -> -(SP)
RET_POPPED
L0010: LOADB L02,#02 -> -(SP)
ADD L02,(SP)+ -> -(SP)
ADD (SP)+,#03 -> L02
JUMP L0009
L0011: RFALSE
Routine R0320, 3 locals
JL L01,#40 [FALSE] L0002
JG L01,#00 [FALSE] L0002
GET_PROP_ADDR L00,L01 -> Gef
JZ Gef [TRUE] L0001
GET_PROP_LEN Gef -> Gef
L0001: PUSH Gef
RET_POPPED
L0002: CALL_VS R0319 (L00,L01) -> L02
JZ L02 [TRUE] RFALSE
SUB L02,#01 -> -(SP)
LOADB (SP)+,#00 -> -(SP)
RET_POPPED
Routine R0321, 2 locals
JL L00,#01 [TRUE] L0001
SUB #0161,#ff -> -(SP)
JG L00,(SP)+ [FALSE] L0004
L0001: JE L01,#46,#47,#45 [FALSE] RFALSE
CALL_2S R0325 (L00) -> -(SP)
PULL Gef
JE Gef,#02 [FALSE] L0002
JE L01,#45 [TRUE] RTRUE
JUMP L0003
L0002: JE Gef,#03 [FALSE] L0003
JE L01,#46,#47 [TRUE] RTRUE
L0003: RFALSE
L0004: JL L01,#40 [FALSE] L0005
GET_PROP_ADDR L00,L01 -> -(SP)
JZ (SP)+ [FALSE] RTRUE
RFALSE
L0005: CALL_VS R0319 (L00,L01) -> -(SP)
JZ (SP)+ [FALSE] RTRUE
JL L01,#48 [FALSE] L0006
JIN L00,"Class" [TRUE] RTRUE
L0006: RFALSE
Routine R0322, 5 locals
JL L00,#01 [TRUE] L0001
SUB #0161,#ff -> -(SP)
JG L00,(SP)+ [FALSE] L0002
L0001: JE L01,#03,#04 [FALSE] RFALSE
SUB L01,#01 -> -(SP)
CALL_2S R0325 (L00) -> -(SP)
JE (SP)+,(SP)+ [TRUE] RTRUE
RFALSE
L0002: STORE Gef,L01
JE Gef,#01 [FALSE] L0003
JG L00,#04 [FALSE] RTRUE
JIN L00,"Class" [TRUE] RTRUE
RFALSE
L0003: JE Gef,#02 [FALSE] L0004
JG L00,#04 [FALSE] RFALSE
JIN L00,"Class" [TRUE] RFALSE
RTRUE
L0004: JE Gef,#03,#04 [FALSE] L0005
RFALSE
L0005: JIN L01,"Class" [TRUE] L0006
CALL_VN R0324 (S244,L01,#ffff)
RFALSE
L0006: GET_PROP_ADDR L00,#02 -> L03
JZ L03 [TRUE] RFALSE
GET_PROP_ADDR L00,#02 -> Gef
JZ Gef [TRUE] L0007
GET_PROP_LEN Gef -> Gef
L0007: STORE L04,Gef
STORE L02,#00
L0008: DIV L04,#02 -> -(SP)
JL L02,(SP)+ [FALSE] L0009
LOADW L03,L02 -> -(SP)
JE (SP)+,L01 [TRUE] RTRUE
INC L02
JUMP L0008
L0009: RFALSE
Routine R0323, 9 locals
STORE L04,#00
L0001: JL L04,#30 [FALSE] L0004
TEST_ATTR L01,L04 [FALSE] L0002
SET_ATTR L00,L04
JUMP L0003
L0002: CLEAR_ATTR L00,L04
L0003: INC L04
JUMP L0001
L0004: STORE L04,#01
L0005: JL L04,#40 [FALSE] L0010
GET_PROP_ADDR L00,L04 -> L02
GET_PROP_ADDR L01,L04 -> L03
GET_PROP_ADDR L00,L04 -> Gef
JZ Gef [TRUE] L0006
GET_PROP_LEN Gef -> Gef
L0006: STORE L07,Gef
JZ L02 [TRUE] L0009
JZ L03 [TRUE] L0009
GET_PROP_ADDR L01,L04 -> Gef
JZ Gef [TRUE] L0007
GET_PROP_LEN Gef -> Gef
L0007: PUSH Gef
JE L07,(SP)+ [FALSE] L0009
STORE L05,#00
L0008: JL L05,L07 [FALSE] L0009
LOADB L03,L05 -> -(SP)
STOREB L02,L05,(SP)+
INC L05
JUMP L0008
L0009: INC L04
JUMP L0005
L0010: GET_PROP_ADDR L00,#03 -> -(SP)
JZ (SP)+ [TRUE] L0011
GET_PROP_ADDR L01,#03 -> -(SP)
JZ (SP)+ [FALSE] L0012
L0011: RTRUE
L0012: GET_PROP L01,#03 -> L04
JUMP L0014
L0013: ADD L04,L07 -> -(SP)
ADD (SP)+,#03 -> L04
L0014: LOADW L04,#00 -> -(SP)
JZ (SP)+ [TRUE] L0020
LOADW L04,#00 -> L08
LOADB L04,#02 -> L07
GET_PROP L00,#03 -> L05
JUMP L0016
L0015: LOADB L05,#02 -> -(SP)
ADD L05,(SP)+ -> -(SP)
ADD (SP)+,#03 -> L05
L0016: LOADW L05,#00 -> -(SP)
JZ (SP)+ [TRUE] L0019
LOADW L05,#00 -> -(SP)
AND (SP)+,#7fff -> -(SP)
AND L08,#7fff -> -(SP)
JE (SP)+,(SP)+ [FALSE] L0018
LOADB L05,#02 -> -(SP)
JE L07,(SP)+ [FALSE] L0018
STORE L06,#03
L0017: ADD L07,#03 -> -(SP)
JL L06,(SP)+ [FALSE] L0018
LOADB L04,L06 -> -(SP)
STOREB L05,L06,(SP)+
INC L06
JUMP L0017
L0018: JUMP L0015
L0019: JUMP L0013
L0020: RTRUE
Routine R0324, 5 locals
PRINT "
** Run-time error: "
JIN L01,"Class" [FALSE] L0001
PRINT "Class "
L0001: PRINT_OBJ L01
PRINT " (object number "
PRINT_NUM L01
PRINT ") "
JL L02,#00 [FALSE] L0002
PRINT "is not of class "
SUB #00,L02 -> -(SP)
CALL_2N R0104 ((SP)+)
JUMP L0004
L0002: PRINT " has no property "
CALL_2N R0315 (L02)
STORE L04,#1651
LOADW L04,#00 -> L03
JL L02,#00 [TRUE] L0003
JL L02,L03 [TRUE] L0004
L0003: PRINT " (and nor has any other object)"
L0004: PRINT " to "
PRINT_PADDR L00
PRINT " **
"
RTRUE
Routine R0325, 1 local
JZ L00 [TRUE] RFALSE
JL L00,#01 [TRUE] L0001
SUB #0161,#ff -> -(SP)
JG L00,(SP)+ [FALSE] RTRUE
L0001: CALL_VS R0326 (L00,S001) -> -(SP)
JL (SP)+,#00 [TRUE] L0002
RET #03
L0002: CALL_VS R0326 (L00,#129a) -> -(SP)
JL (SP)+,#00 [TRUE] L0003
RET #02
L0003: RFALSE
Routine R0326, 4 locals
JE L00,L01 [FALSE] L0001
RFALSE
L0001: JL L00,#00 [FALSE] L0002
JL L01,#00 [TRUE] L0002
RTRUE
L0002: JL L00,#00 [TRUE] L0003
JL L01,#00 [FALSE] L0003
RET #ffff
L0003: AND L00,#7fff -> L02
AND L01,#7fff -> L03
JG L02,L03 [FALSE] L0004
RTRUE
L0004: RET #ffff
Routine R0327, 1 local
CALL_2S R0325 (L00) -> -(SP)
PULL Gef
JE Gef,#02 [FALSE] L0001
RET #03
L0001: JE Gef,#03 [FALSE] L0002
RET #04
L0002: JE Gef,#01 [FALSE] L0005
JIN L00,"Class" [TRUE] L0003
JG L00,#04 [TRUE] L0004
L0003: RTRUE
L0004: RET #02
L0005: RFALSE
Routine R0328, 4 locals
L0001: LOADB #00,L00 -> L02
JZ L02 [TRUE] L0006
AND L02,#80 -> -(SP)
JZ (SP)+ [TRUE] L0002
INC L00
LOADB #00,L00 -> -(SP)
AND (SP)+,#3f -> L03
JUMP L0004
L0002: AND L02,#40 -> -(SP)
JZ (SP)+ [TRUE] L0003
STORE L03,#02
JUMP L0004
L0003: STORE L03,#01
L0004: INC L00
AND L02,#3f -> -(SP)
JE (SP)+,L01 [FALSE] L0005
RET L00
L0005: ADD L00,L03 -> L00
JUMP L0001
L0006: JL L01,#00 [FALSE] L0007
ADD L00,#01 -> -(SP)
RET_POPPED
L0007: RFALSE
Routine R0329, 5 locals
STORE Gef,L01
JE Gef,#40 [FALSE] L0005
STORE Gef,#00
GET_CHILD L00 -> -(SP) [FALSE] L0002
L0001: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0001
L0002: PULL Gee
PUSH Gef
JG (SP)+,#01 [FALSE] RFALSE
GET_CHILD L00 -> L04 [FALSE] L0003
L0003: REMOVE_OBJ L04
CALL_VS R0321 (L04,#40) -> -(SP)
JZ (SP)+ [TRUE] L0004
CALL_VN R0318 (L04,#40)
L0004: RET L04
L0005: JE Gef,#41 [FALSE] L0009
CALL_VS R0322 (L02,L00) -> -(SP)
JZ (SP)+ [FALSE] L0006
SUB #00,L00 -> -(SP)
CALL_VN R0324 (S245,L02,(SP)+)
RFALSE
L0006: GET_CHILD L00 -> -(SP) [FALSE] L0007
L0007: CALL_VN R0323 (L02,(SP)+)
CALL_VS R0321 (L02,#40) -> -(SP)
JZ (SP)+ [TRUE] L0008
CALL_VN R0318 (L02,#40)
L0008: RFALSE
L0009: JE Gef,#42 [FALSE] L0013
CALL_VS R0322 (L02,L00) -> -(SP)
JZ (SP)+ [FALSE] L0010
SUB #00,L00 -> -(SP)
CALL_VN R0324 (S246,L02,(SP)+)
RFALSE
L0010: CALL_VS R0321 (L02,#42) -> -(SP)
JZ (SP)+ [TRUE] L0011
CALL_VN R0318 (L02,#42)
L0011: GET_CHILD L00 -> -(SP) [FALSE] L0012
L0012: CALL_VN R0323 (L02,(SP)+)
INSERT_OBJ L02,L00
RFALSE
L0013: JE Gef,#43 [FALSE] L0016
STORE Gef,#00
GET_CHILD L00 -> -(SP) [FALSE] L0015
L0014: INC Gef
GET_SIBLING (SP)+ -> -(SP) [TRUE] L0014
L0015: PULL Gee
PUSH Gef
SUB (SP)+,#01 -> -(SP)
RET_POPPED
L0016: JE Gef,#44 [FALSE] L0019
CALL_VS R0322 (L02,L00) -> -(SP)
JZ (SP)+ [FALSE] L0017
SUB #00,L00 -> -(SP)
CALL_VN R0324 (S247,L02,(SP)+)
RFALSE
L0017: CALL_VS R0322 (L03,L00) -> -(SP)
JZ (SP)+ [FALSE] L0018
SUB #00,L00 -> -(SP)
CALL_VN R0324 (S248,L03,(SP)+)
RFALSE
L0018: CALL_VN R0323 (L02,L03)
RFALSE
L0019: RTRUE
[End of code]
[Start of text]
S001: "Competition '96"
S002: "
An Interactive Guide
Copyright (c) 1997 by Lucian Smith.
"
S003: "970405"
S004: "6/5"
S005: "a"
S006: "---"
S007: "the"
S008: "The "
S009: "the "
S010: "a "
S011: "The "
S012: "the "
S013: "an "
S014: "The "
S015: "the "
S016: "some "
S017: "The "
S018: "the "
S019: "some "
S020: "N = next subject"
S021: "P = previous"
S022: " Q = resume game"
S023: "Q = previous menu"
S024: "RETURN = read subject"
S025: "Score: "
S026: "Moves: "
S027: "Time: "
S028: "You can't go that way."
S029: "your former self"
S030: "yourself"
S031: "Darkness"
S032: "those things"
S033: "that"
S034: " or "
S035: "nothing"
S036: " is"
S037: " are"
S038: "is "
S039: "are "
S040: " and "
S041: "whom "
S042: "which "
S043: "games of various types"
S044: "Inform"
S045: ".z5"
S046: "an"
S047: "Inform games"
S048: "ftp://ftp.gmd.de/if-archive/infocom/interpreters/frotz/
--and--
ftp://ftp.gmd.de/if-archive/infocom/interpreters/zip/
(as well as in other subdirectories under ../interpreters/)"
S049: "Frotz222Std02.zip or frotzpl3.zip (frotz), or jzpc201g.zip or zip200.zip
(zip)"
S050: "WinFrotzR4.zip (frotz), or winf_05.zip or wzip21.zip (zip)"
S051: "MaxZip-153.hqx, MultiAventures1.2.cpt, or ZIP_13_68k.cpt (zip)"
S052: "frotz201_std02_os2b7.zip (frotz), or zip8os2 or zip8warp (zip)"
S053: "ziplinux.patch (source code)"
S054: "frotz201a_unixsrc.tar.gz (frotz) or zip.sh.Z (zip source code),
zip-sgi.tar.gz (zip IRIX), or xzip161.tar.Z (X-Windows)"
S055: "Frotz222Std02Amiga8.lha (frotz) or AmigaZIP_V8.lha (zip)"
S056: "Acorn_Zip2000_Std0.2.spk (Acorn Archimedes), atarizip.zoo (Atari ST),
jzip.bebox.tar.gz (BeBox), jzipstb3.zip (Atari 16/32 bit), zipgs1.0a1.sea
(Apple IIGS)"
S057: ".gam"
S058: "TADS"
S059: "TADS games"
S060: "ftp://ftp.gmd.de/if-archive/programming/tads/executables/"
S061: "pc-go32.tads2exe.zip or tads2exe.zip"
S062: "MaxTADS-103.hqx or tads2exe.sit"
S063: "tads2os2.zip"
S064: "tads2exe-linuxelf.tar.gz"
S065: "???? (can't find it! I have it myself! aaargh!)???"
S066: "AmigaTADS2210.lha"
S067: "AcornTADSruntime.spk (Acorn), atari.tads2exe.arc (Atari ST/TT/Falcon)"
S068: ".bat"
S069: "AGT"
S070: "an"
S071: "AGT games"
S072: "ftp://ftp.gmd.de/if-archive/programming/agt/"
S073: "(provided)"
S074: "CompileAgt.cpt (compiles the source code), and MultiAventures1.2.cpt
(plays the game) (it helps if you know French)"
S075: "REXX Adventure"
S076: ".rad"
S077: "ftp://ftp.gmd.de/if-archive/programming/rexx-adventure/"
S078: "RADF100.ZIP"
S079: "In this tiny room, a carpet of debris is broken by stone-cut steps
leading back down into the darkness from which you came. Though you got here
late, it looks like those who came before had a great time.
"
S080: "You climb the walls for a bit, but it doesn't help."
S081: "There doesn't seem to be any way out other than the way you got here."
S082: "playable"
S083: "This is the bin in which to put games that are playable on your
computer. When you're finished, pull the lever to sort the games in here."
S084: "unplayable"
S085: "This is the bin in which to put games which are unplayable on your
computer."
S086: "unsorted"
S087: "This is the bin where the games start out. The games in the playable bin
can't be sorted (by pulling the lever) until this bin is empty, and no games
are left lying around or in your posession."
S088: "Aayela"
S089: "Magnus Olsson"
S090: "An Interactive Vision."
S091: "aayela"
S092: "readme and walkthrough.txt"
S093: "Alien Abduction?"
S094: "Charles Gerlach"
S095: "An Interactive Fiction Story."
S096: "abduct"
S097: "aaintro.txt, aaquanda.txt, and aawalkth.txt"
S098: "Wearing the Claw"
S099: "Paul O'Brian"
S100: "an Interactive Fantasy"
S101: "claw"
S102: "Don't Be Late!"
S103: "Grew Ewing"
S104: "An Interactive Snippet"
S105: "dbl"
S106: "ALAN"
S107: "an"
S108: "ftp://ftp.gmd.de/if-archive/programming/alan/"
S109: ".acd"
S110: "arun262pc.zip"
S111: "arun260amiga.lzh"
S112: "arun2_5_1_mac.sit.hqx"
S113: "arun261linux.tar.Z"
S114: "arun260sun4.tar.Z (SunOS), arun260hp.tar.Z (HP/UX), or arun2_5_1_vms.lzc
(VMS)"
S115: "arun260solaris2.tar.Z (Solaris)"
S116: "1req.txt, walkthru.txt, and dbl.dat"
S117: "Delusions"
S118: "(anonymous)"
S119: "an Interactive Self-Discovery"
S120: "delusns"
S121: "Fear"
S122: "(anonymous)"
S123: "an Interactive Nightmare"
S124: "fear"
S125: "My First Stupid Game"
S126: "Dan McPherson"
S127: "first"
S128: "first.*, first.sol, and source/* (for non-IBM users)"
S129: "Of Forms Unknown"
S130: "Chris Markwyn"
S131: "an Interactive Excursion"
S132: "forms"
S133: "In the End"
S134: "Joe Mason"
S135: "intheend"
S136: "The Curse of Eldor"
S137: "Stuart Allen"
S138: "an Adventure"
S139: "eldor"
S140: ".jac"
S141: "JACL"
S142: "ftp://ftp.gmd.de/if-archive/games/competition96/jacl/"
S143: "jacl.exe (provided)"
S144: "jacl.elf (provided; see 1req.txt)"
S145: "jacl.*, eldor.ps, 1req.txt, and walkthru"
S146: "Kissing the Buddha's Feet"
S147: "(anonymous)"
S148: "an Interactive Cramming"
S149: "kissing"
S150: "kissing.sol"
S151: "Punkirita Quest One: Liquid"
S152: "Rybread Celsius"
S153: "a Viking's Funeral"
S154: "liquid"
S155: "liquid.sol"
S156: "Lists and Lists"
S157: "Andrew Plotkin"
S158: "An Interactive Tutorial"
S159: "lists"
S160: "erykath@wherever"
S161: "Maiden of the Moonlight"
S162: "Brian P. Dean"
S163: "maiden"
S164: "readme.txt, maiden.ico, maiden.txt, and maiden.wlk"
S165: "Phlegm"
S166: "Adjacent Drooler"
S167: "an Interactive Interactive"
S168: "phlegm"
S169: "The Land beyond the Picket Fence"
S170: "standalone DOS"
S171: "Martin Oehm"
S172: "picket"
S173: ".exe"
S174: "picket.dat, picket.sol, handbook.doc, and 1req.txt"
S175: "Piece of Mind"
S176: "Giles Boutel"
S177: "an Interactive Short Story"
S178: "piece"
S179: "Promoted!"
S180: "Mike DeSanto"
S181: "promoted"
S182: "1req.txt"
S183: "Ralph"
S184: "Miron Schmidt"
S185: "an Interactive Sniffing"
S186: "ralph"
S187: "Reverberations"
S188: "Russell Wain Glasser"
S189: "a Hectic Voltarian Adventure"
S190: "reverb"
S191: "Rippled Flesh"
S192: "Rybread Celsius"
S193: "an Interactive Goosing"
S194: "ripflesh"
S195: "ripflesh.sol"
S196: "The Meteor, the Stone and a Long Glass of Sherbet"
S197: "Angela M. Horns"
S198: "The Interactive Memoirs of a Diplomat"
S199: "sherbet"
S200: "Small World"
S201: "Andrew D. Pontious"
S202: "Interactive Fiction"
S203: "smallwld"
S204: "BugHints.txt"
S205: "The House of the Stalker"
S206: "Jason Clayton White"
S207: "stalker"
S208: "readme.txt"
S209: "Stargazer"
S210: "Jonathan Fry"
S211: "Prologue, an Adventure in Outfitting"
S212: "stargaze"
S213: "stargaze.sol"
S214: "Tapestry"
S215: "Daniel Ravipinto"
S216: "an Interactive Destiny"
S217: "tapestry"
S218: "readme.1st, instruct.txt, and walkthru.txt"
S219: "Sir Ramic Hobbs and the Oriental Wok"
S220: "Gil Williamson"
S221: "wok"
S222: "1req.txt, mrun.exe, wok.*, and wok.wlk"
S223: ".bat"
S224: "AGT"
S225: "an"
S226: "Looking more closely, you see cables going from the various bins into
the wall just below the lever."
S227: "All the games have blurbs on them. I'm afraid you'll have to be more
specific (or just 'READ <game>')."
S228: "
A piece of paper is tacked to one wall, with instructions."
S229: ""To find out about a particular system (like Inform) just type 'READ AN
INFORM GAME' (The same will work with TADS, AGT, and the rest of the game types
in this competition.)""
S230: "It's a Big Red Button Which, If You Push It, Will Make You Do Everything
You Really Need To Do Automatically. What more do you want to know?"
S231: "Inside the bins are representations of the various games in this
contest. You can examine an individual game to get basic information about it,
and to find out what rating you've given it. If you would like more detailed
information, you can 'READ THE BLURB ON <game>' or simply 'READ <game>'. The
blurb will give you the title and subtitle of the game, the directory where you
can find it, and information about the interpreter(s) you can use to play it."
S232: "When all of the games are sorted into either the 'playable' or
'unplayable' bin, the light will turn green, and you can pull the lever. This
will cause a rack to rotate into the room, and all of the games from the
'playable' bin will be moved to this rack, sorted in a random order. If you
find you have made a mistake, or wish to re-sort your games, pull the lever
again, and it will deposit the games from the rack back into the 'playable'
bin, where you can re-arrange them."
S233: "The rack, when it appears, will hold all the games you indicated you
could play, in a random order. A game must be inside the rack before you can
rate it, which you can do by typing 'RATE <game> <number>', where <number> is a
number (integer) between one and ten. The idea here is that you play the first
game on your list first, then the next, and so on, until you either finish or
run out of time. You can rate as you go, or wait until you finish and rate them
then. You can always change your old ratings, and the program will not insist
on you rating them in order (though it will comment on it).
(The formatting is based on a fixed-width font, and assumes a screen width at
least a few characters wider than the longest game name. I apologize if it
looks bad on your interpreter.)"
S234: "The buttons will (theoretically) output to a text file your list of
games and ratings. The square button will save a list of just the games you've
rated, while the round button will save the entire list, in the same order as
is listed in the rack. It may not get good results on all interpreters, but I
think I've worked out the major bugs. If it doesn't work for you, I'd recommend
turning scripting on, examining the rack, then turning scripting off again.
('SCRIPT ON. EXAMINE RACK. SCRIPT OFF'). If your interpreter prompts you for a
file name, then that's the file your list will turn up under. If it doesn't, it
either didn't work, or turned up in the file "rating.txt" At any rate, if it
works, you can use this file to mail to the vote collector, if you wish."
S235: "This really needs no extensive documentation, as it does precisely what
its title implies. You can think of it as an automatic 'walkthrough' for this
game. All the typed commands you see yourself executing would actually work if
you typed them yourself. The first, 'GET ALL GAMES FROM EVERYWHERE' is
hardwired into this game, and can be shortened to 'GET ALL GAMES' or even 'GET
ALL' (since the games are the only objects around you need to carry.)"
S236: "Once all the games are sorted, you may refer to the first game on the
list which you haven't rated as 'next', as in EXAMINE NEXT or RATE NEXT. This
is a convenience so you don't have to look at the rack each time you want to
figure out which game is next on the docket."
S237: "October 20, 1996 - Votes will begin to be accepted at:
ct@ecs.ox.ac.uk
November 30, 1996 - The voting account will close. No further votes will be
accepted after midnight on this date. (Midnight for the person whose account
this is. Save yourself grief and vote early.)
December 1-5, 1996 - The winners of the competition will be announced at
various places of interest on the internet."
S238: " The Judging system this year was debated at large, and it was finally
decided that this game would indeed be official. Whizzard hasn't published a
revised Judging section yet, but as far as I can tell, it will be the same as
last year, with the exception that partial judging entries are allowable. This
still means that if you can by any means judge all the games, you should do so.
But if you can't, you should judge them in a randomized order, whether through
this game or in some other manner. In any case, please judge as many as you
can, so that we will have statistically significant results.
Betatesters may vote in the main competition this year, unlike last year. There
are currently no plans for a MISS CONGENIALITY award for votes from game
authors, but there have been rumors of a desire for one amongst some of us.
Presumably, once we have an official vote counter, we could bug them to collate
separate MISS CONGENIALITY votes, or we can organize one ourselves. Bugging
Whizzard about it is probably NOT the way to go, since he's tired, overworked,
and cranky ;-)"
S239: "In brief: it doesn't, not really. I intended this game as a tool,
nothing more. If you don't like it, push the Big Red Button and quit. If you do
like it, use it as a scratchpad to record your ratings and print them out. Use
it to find where the odd interpreters reside on the archive, or to find out if
your platform has a new interpreter somewhere. If you absolutely hate it,
either rate all the games or find another way to choose which games to play
first. Any option will work."
S240: "Greetings! This is Release 1 (the first official release) of my very
first Inform game. Of course, it's not much of a game, per se, but it did teach
me a lot about Inform. There's still a lot more features I'd like to add to
this, but I've been working on my actual Competition game so much none of the
following have been implemented. Still, hope springs eternal.
The features I'd like to add:
-A helpful janitor, who could interact with you, ask you questions about how
you wanted things set up, and who would set things up for you if you didn't
want to do them yourself. He'd also be able to answer questions you had about
parts of the game.
-A rate-o-meter, an optional item you could use to help you rate the games, by
giving it levels of how much you liked the plot, characters, coding, puzzles,
etc.
-A way of recording one- or two-line sentences about your feelings on each
game, for later reference.
If you have comments, bug reports, ideas, whatever, feel free to contact me at:
lpsmith@rice.edu
Enjoy!"
S241: "write to"
S242: "read"
S243: "send message"
S244: "apply 'ofclass' for"
S245: "recreate"
S246: "destroy"
S247: "copy"
S248: "copy"
S249: "<unknown attribute>"
S250: "name"
S251: "create"
S252: "recreate"
S253: "destroy"
S254: "remaining"
S255: "copy"
S256: "call"
S257: "print"
S258: "print_to_array"
S259: "animate"
S260: "absent"
S261: "clothing"
S262: "concealed"
S263: "container"
S264: "door"
S265: "edible"
S266: "enterable"
S267: "general"
S268: "light"
S269: "lockable"
S270: "locked"
S271: "moved"
S272: "on"
S273: "open"
S274: "openable"
S275: "proper"
S276: "scenery"
S277: "scored"
S278: "static"
S279: "supporter"
S280: "switchable"
S281: "talkable"
S282: "transparent"
S283: "visited"
S284: "workflag"
S285: "worn"
S286: "male"
S287: "female"
S288: "neuter"
S289: "pluralname"
S290: "before"
S291: "after"
S292: "life"
S293: "n_to"
S294: "s_to"
S295: "e_to"
S296: "w_to"
S297: "ne_to"
S298: "se_to"
S299: "nw_to"
S300: "sw_to"
S301: "u_to"
S302: "d_to"
S303: "in_to"
S304: "out_to"
S305: "door_to"
S306: "with_key"
S307: "door_dir"
S308: "invent"
S309: "plural"
S310: "add_to_scope"
S311: "list_together"
S312: "react_before"
S313: "react_after"
S314: "grammar"
S315: "orders"
S316: "initial"
S317: "when_open"
S318: "when_closed"
S319: "when_on"
S320: "when_off"
S321: "description"
S322: "describe"
S323: "article"
S324: "cant_go"
S325: "found_in"
S326: "time_left"
S327: "number"
S328: "time_out"
S329: "daemon"
S330: "each_turn"
S331: "capacity"
S332: "short_name"
S333: "short_name_indef"
S334: "parse_name"
S335: "articles"
S336: "inside_description"
S337: "play"
S338: "Pronouns"
S339: "Quit"
S340: "Restart"
S341: "Restore"
S342: "Save"
S343: "Verify"
S344: "ScriptOn"
S345: "ScriptOff"
S346: "NotifyOn"
S347: "NotifyOff"
S348: "Places"
S349: "Objects"
S350: "Score"
S351: "FullScore"
S352: "Inv"
S353: "Take"
S354: "Drop"
S355: "Remove"
S356: "PutOn"
S357: "Insert"
S358: "EmptyT"
S359: "Give"
S360: "Show"
S361: "Enter"
S362: "GetOff"
S363: "Exit"
S364: "VagueGo"
S365: "Go"
S366: "LMode1"
S367: "LMode2"
S368: "LMode3"
S369: "Look"
S370: "Examine"
S371: "LookUnder"
S372: "Search"
S373: "Unlock"
S374: "Lock"
S375: "SwitchOn"
S376: "SwitchOff"
S377: "Open"
S378: "Close"
S379: "Disrobe"
S380: "Wear"
S381: "Eat"
S382: "Yes"
S383: "No"
S384: "Burn"
S385: "Pray"
S386: "Wake"
S387: "WakeOther"
S388: "Kiss"
S389: "Think"
S390: "Smell"
S391: "Listen"
S392: "Taste"
S393: "Touch"
S394: "Dig"
S395: "Cut"
S396: "Jump"
S397: "JumpOver"
S398: "Tie"
S399: "Drink"
S400: "Fill"
S401: "Sorry"
S402: "Strong"
S403: "Mild"
S404: "Attack"
S405: "Swim"
S406: "Swing"
S407: "Blow"
S408: "Rub"
S409: "Set"
S410: "SetTo"
S411: "WaveHands"
S412: "Wave"
S413: "Pull"
S414: "Push"
S415: "Turn"
S416: "PushDir"
S417: "Squeeze"
S418: "ThrowAt"
S419: "Tell"
S420: "Answer"
S421: "Ask"
S422: "Buy"
S423: "Sing"
S424: "Climb"
S425: "Wait"
S426: "Sleep"
S427: "Consult"
S428: "parse_input"
S429: "AskFor"
S430: "GiveR"
S431: "ShowR"
S432: "begin_action"
S433: "end_turn_sequence"
S434: "Transfer"
S435: "standalone_DOS"
S436: "rating"
S437: "title"
S438: "game_type"
S439: "author"
S440: "Read"
S441: "subtitle"
S442: "filename"
S443: "ext"
S444: "other_files"
S445: "interp_directory"
S446: "DOS_interp"
S447: "Win_interp"
S448: "Mac_interp"
S449: "OS2_interp"
S450: "Lnx_interp"
S451: "Unix_interp"
S452: "Amg_interp"
S453: "Other_interp"
S454: "email"
S455: "ranking"
S456: "adj"
S457: "desc"
S458: "title_length"
S459: "readiness"
S460: "max_title_len"
S461: "mimics"
S462: "select"
S463: "operate"
S464: "emblazon"
S465: "Version"
S466: "Empty"
S467: "InvTall"
S468: "InvWide"
S469: "GoIn"
S470: "ReadAbout"
S471: "Play"
S472: "Rate"
S473: "NumRate"
S474: "MyScore"
S475: "Help"
S476: "GetAllGames"
[End of text]
[End of file]